Mam do napisania taki prosty program w języku C i zrobiłem go, wydaje mi się że dobrze, normalnie się kompiluje i nie zwraca żadnych błędów tylko że… Nie działa tak jak trzeba. Po pierwsze nie wyświetla w ogóle tekstu z formuły scanf tylko od razu trzeba wpisywać liczbę, a po drugie jako wynik zawsze zwraca 32. Podejrzewam, że coś przy tym scanf pomieszałem i program nie widzi wpisywanej liczby więc myśli, że jest to 0 Kompiluję to DevC++. Będzie miło jeśli ktoś zechce rzucić okiem i ewentualnie naprowadzić mnie na dobrą drogę!
#include
float main()
{
float a;
float b;
scanf("Podaj temperature w stopniach Celsjusza %f",&a);
b=(5/9)*a+32;
printf("Wartosc w stopniach Fahrenheita wynosi %f\n",b);
system("PAUSE");
return 0;
}
Faktycznie, poprawiłem nieco ten kod i teraz działa jak powinien. Dzięki wielkie! Pojawił się natomiast nowy problem ponieważ chciałem jeszcze dodać taką opcję, że po przeliczeniu program pyta się nas czy liczymy od nowa czy wychodzimy z programu. Dodałem więc parę linijek kodu i problem jest taki, że w momencie kiedy wyskoczy wynik i pokazuje się zapytanie program od razu się kończy. Nie można wpisać wartości t/n. Jeśli typ zmiennej t zamienię na integer i zamiast t/n wpiszemy wartości 1/0 to wtedy działa bez problemu
#include
#include
float a,b;
char t;
main()
{
printf("Podaj temperature w stopniach Celsjusza: ");
scanf("%f",&a);
b=9*a/5+32;
printf("Wartosc w stopniach Fahrenheita wynosi: %f\n",b);
printf("Czy chcesz podac nowe dane? t/n: ");
scanf("%c",&t);
switch(t)
{
case 'n':
return 0;
break;
case 't':
system("cls");
return main();
break;
}
}