Witam ma takie zadanie nie bardzo wiem jak je ugryźć, kombinuje już chyba ze 4 godziny i nie bardzo wiem w jaką stronę iść
Chciałem zrobić to tak:
do oddzielnych zmiennych wpisać każdą z cyfr tworzących kwotę
czyli jak kwota to 4326 to podzieliłem to że
a1=6
a2=2
a3=3.... itd
potem chciałem napisać algorytm na zasadzie funkcji switch która będzie "rozpoznawać" cyfry i przypisywać im odpowiednie słowa gdy na przykład a3=3 to wypisze "trzysta" potem jak np a2=2 to wypisze "dwadzieścia" itd...
wiem że są nieciekawe przypadki jak naście czyli od jeżeli mam jakieś naście bo ostatni cyfra nie mozę być pisana jako na przykład 5 tylko jak wcześniejsza będzie jeden to będzie pisane piętnascie.
Znacie jakąś ciekawą metodę jak to zrobić tak zeby było jak najproscie
Tyle narazie zrobiłem
a oto treść zadania:
Chciałem zrobić to tak:
do oddzielnych zmiennych wpisać każdą z cyfr tworzących kwotę
czyli jak kwota to 4326 to podzieliłem to że
a1=6
a2=2
a3=3.... itd
potem chciałem napisać algorytm na zasadzie funkcji switch która będzie "rozpoznawać" cyfry i przypisywać im odpowiednie słowa gdy na przykład a3=3 to wypisze "trzysta" potem jak np a2=2 to wypisze "dwadzieścia" itd...
wiem że są nieciekawe przypadki jak naście czyli od jeżeli mam jakieś naście bo ostatni cyfra nie mozę być pisana jako na przykład 5 tylko jak wcześniejsza będzie jeden to będzie pisane piętnascie.
Znacie jakąś ciekawą metodę jak to zrobić tak zeby było jak najproscie
Tyle narazie zrobiłem
#include <stdio.h>
#include <conio.h>
int main()
{
float kwota;
int a1,a2,a3,a4,a5,a6,a7,a8,x;
printf("Podaj kwote\n");
scanf("%f",&kwota);
if(kwota==1000000)
printf("milion zlotych");
else
{
a5=kwota/10000;
a4=(kwota-a5*10000)/1000;
a3=(kwota-(a5*10000)-(a4*1000))/100 ;
a2=(kwota-(a5*10000)-(a4*1000)-(a3*100))/10 ;
a1=kwota-(a5*10000)-(a4*1000)-(a3*100)-(a2*10) ;
printf("a5 %d\n",a5);
printf("a4 %d\n",a4);
printf("a3 %d\n",a3);
printf("a2 %d\n",a2);
printf("a1 %d\n",a1);
}
getch();
return 0;
}
a oto treść zadania:
Bazując na elementach programowanie poznanych na wykładzie i laboratorium, napisać w języku C program
realizujący poniższe zadania:
Zadanie 1: Drukowanie słowne kwoty waluty w złotych , do 1 000 000 zł
Program musi definiować własne funkcje i używać ich w uzasadnionych przypadkach. Powinien realizować
następujące zadania:
1.1 Pobrać od użytkownika liczbę kwota typu float
1.2 Wyświetlić na ekranie podaną kwotę w postaci liczbowej i słownej, wraz z groszami, na przykład
265 182,01 -> dwiescie szescdziesiat piec tysiecy sto osiemdziesiat dwa zlote i jeden grosz
17,10 -> siedemnascie zlotych i dziesiec groszy
1.3 Opis słowny musi być poprawny gramatycznie, tzn. należy zapewnić odpowiednią odmianę wyrazów
(złoty, złote, złotych, grosz, grosze, groszy)