Pomocy! Zadanie brzmi: Napisz program, który temperaturę w stopniach Fahrenheita zamieni na temperaturę w stopniach Celsjusza, z dokładnością minimum dwóch miejsc po przecinku. Program wypisze na ekran przeliczanie stopni Fahrenheita z zakresu <0..100> co dziesięć stopni. Oczekiwane wyjście wygląda tak: 0 F = -17.7778 C 10 F = -12.2222 C 20 F = -6.66667 C 30 F = -1.11111 C 40 F = 4.44444 C
Napisałam: int main() { double C; int F = 0; int a = 32; double b = 1.8; int ile = 100; do { C = (F - a) / b; cout << F << " F" << " = " << C << " C" << endl; F++; ile--; } while (ile > 0); } Ale nie potrafię napisać tak by Fahrenheit wyświetlał tylko dziesiątki. Z góry dziękuję za pomoc.
Abaddon24
#include <iostream> #include <cstdlib> using namespace std; int main() { double wynik; for(int i=0;i<=180 ; i++){ wynik = ((i-32)/1.8); cout << i << " F = "; printf("%.2lf",wynik); cout << " C" << endl; } system( "PAUSE" ); }
Ja tak trochę krócej :) napisałem :)
0 votes Thanks 1
koleżeński
Poprawiony kod w załączniku. A teraz wytłumaczenie: 1. Jeśli deklarujesz zmienne jednego typu to deklaruj je w jednej linii po przecinku np. int a = 1, b = 2, c = 3; wtedy będzie większy porządek w kodzie, mniej niepotrzebnych linii 2. Zwiększałeś zmienną F o jeden i wyświetlało co jeden, wystarczy zwiększać zmienną F o 10 wtedy będzie wyświetlało co 10. Tylko wtedy musisz zmienić wartość zmiennej ile, jeśli nadal chcesz mieć od 1 do 100 stopni F to zmieniasz wartość zmiennej ile na 10 bo teraz jest nie co jeden tylko co dziesięć. 3. Zmieniłem też operator w warunku pętli tak żeby wyświetlało do 100 a nie do 99 (czyli w obecnej wersji da to tyle że wyświetli się jeszcze linijka 100 F = 37.7778 C)
#include <cstdlib>
using namespace std;
int main()
{
double wynik;
for(int i=0;i<=180 ; i++){
wynik = ((i-32)/1.8);
cout << i << " F = ";
printf("%.2lf",wynik);
cout << " C" << endl;
}
system( "PAUSE" );
}
Ja tak trochę krócej :) napisałem :)
1. Jeśli deklarujesz zmienne jednego typu to deklaruj je w jednej linii po przecinku np. int a = 1, b = 2, c = 3; wtedy będzie większy porządek w kodzie, mniej niepotrzebnych linii
2. Zwiększałeś zmienną F o jeden i wyświetlało co jeden, wystarczy zwiększać zmienną F o 10 wtedy będzie wyświetlało co 10. Tylko wtedy musisz zmienić wartość zmiennej ile, jeśli nadal chcesz mieć od 1 do 100 stopni F to zmieniasz wartość zmiennej ile na 10 bo teraz jest nie co jeden tylko co dziesięć.
3. Zmieniłem też operator w warunku pętli tak żeby wyświetlało do 100 a nie do 99 (czyli w obecnej wersji da to tyle że wyświetli się jeszcze linijka 100 F = 37.7778 C)