Mam pewien dylemat. Otóż zacząłem niedawno pisać w C. I przerabiam sobie zadania z tej strony https://www.is.umk.pl/~grochu/wiki/doku.php?id=zajecia:jpr_2009_2:zajecia2. I mam problem z pewnym podpunktem. Chodzi o ten podpunkt:
Zmień program tak aby działał dla liczb rzeczywistych (bez operacji modulo (%), która może być wykonana tylko dla liczb całkowitych.
Mój dotychczasowy kod wygląda tak:
int numberOne, numberTwo;
printf("Podaj liczbe pierwszą\n");
scanf("%d", &numberOne);
printf("Podaj liczbe drugą\n");
scanf("%d", &numberTwo);
printf("Suma tych licz to:%df\n", numberOne+numberTwo);
printf("Różnica tych licz to:%df\n", numberOne-numberTwo);
printf("Iloczyn tych licz to:%df\n", numberOne*numberTwo);
printf("Iloraz tych licz to:%df\n", numberOne/numberTwo);
printf("Reszta z dzielenia tych licz to:%d\n",numberOne%numberTwo);
Zastanawiałem się po prostu czy nie zrobić tutaj aby przypadkiem jakiejś instrukcji warunkowej, która by mi sprawdzała jakie liczby podał mi użytnik i na tej podstawie wykonać odpowiednie operacje matematyczne.
int numberOne, numberTwo;
printf("Podaj liczbe pierwszą\n");
scanf("%d", &numberOne);
printf("Podaj liczbe drugą\n");
scanf("%d", &numberTwo);
if(numberOne==int&&numberTwo==int){
//wykonają się wszystkie operacje matematyczne kiedy użytnik poda mi liczby całkowite
printf("Suma tych licz to:%df\n", numberOne+numberTwo);
printf("Różnica tych licz to:%df\n", numberOne-numberTwo);
printf("Iloczyn tych licz to:%df\n", numberOne*numberTwo);
printf("Iloraz tych licz to:%df\n", numberOne/numberTwo);
printf("Reszta z dzielenia tych licz to:%d\n",numberOne%numberTwo);
}else{
//a tu wykonają się wszystkie operacje matematyczne oprócz dzielenia z resztą kiedy użytnik poda liczby rzeczywiste
printf("Suma tych licz to:%df\n", numberOne+numberTwo);
printf("Różnica tych licz to:%df\n", numberOne-numberTwo);
printf("Iloczyn tych licz to:%df\n", numberOne*numberTwo);
printf("Iloraz tych licz to:%df\n", numberOne/numberTwo);
}
Proszę o pomoc gdyż jestem początkujący w języku C. Dziękuje
Chyba że jest jeszcze taka możliwość aby wszystko na flloat pozamieniać bez tej instrukcji warunkowej.
Mój obecny kod
float numberOne, numberTwo;
printf("Podaj liczbe pierwszą\n");
scanf("%f", &numberOne);
printf("Podaj liczbe drugą\n");
scanf("%f", &numberTwo);
printf("Suma tych licz to:%.2f\n", numberOne+numberTwo);
printf("Różnica tych licz to:%.2f\n", numberOne-numberTwo);
printf("Iloczyn tych licz to:%.2f\n", numberOne*numberTwo);
printf("Iloraz tych licz to:%.2f\n", numberOne/numberTwo);
printf("Reszta z dzielenia tych licz to:%.2f\n",numberOne%numberTwo);
Tylko wtedy trzeba by wyrzucić ostatnią linijke:
printf("Reszta z dzielenia tych licz to:%.2f\n",numberOne%numberTwo);
bo gdy tego nie zrobie to kompilator nie wie co to jest '%'