Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Przelicznik odległości z KM na inne

Ostatnio zmodyfikowano 2021-10-12 18:17
Autor Wiadomość
Dzemu
Temat założony przez niniejszego użytkownika
Przelicznik odległości z KM na inne
» 2021-10-12 15:31:55
Witam, muszę napisać program wczytujący z klawiatury liczbę zmiennoprzecinkową oznaczającą odległość w metrach, a następnie wyświetlający na ekranie odległość przeliczoną na cale, stopy, jardy, mile lądowe i mile morskie. Współczynniki konieczne do przeliczenia jednostek odległości zadeklarować w programie w postaci stałych.
Utknąłem (mam nadzieję) na etapie końcowym czyli wypisaniu ile dajmy na to 1 metr wynosi w danej jednostce.
Oto kod:
C/C++
#include <iostream>

int main()
{
   
const float dystansMILELADOWE = 1609;
   
const float dystansCALE = 39.3;
   
const float dystansSTOPY = 3.2;
   
const float dystansJARDY = 1.09;
   
const float dystansMILEMORSKIE = 1852;
   
float MilaLadowa;
   
float Cal;
   
float Jard;
   
float MilaMorska;
   
float dystansM;
   
   
printf( "%s", "Podaj dystansM: " );
   
scanf( "%f", "dystansM" );
   
MilaLadowa = dystansM * dystansMILELADOWE;
   
Cal = dystansM * dystansCALE;
   
Jard = dystansM * dystansJARDY;
   
MilaMorska = dystansM * dystansMILEMORSKIE;
   
printf( "Odległosc w Milach Ladowych %.1f", MilaLadowa );
}
P-179010
DejaVu
» 2021-10-12 15:58:10
Poczytaj jak się używa scanf-a, bo użyłeś go źle.
P-179011
Dzemu
Temat założony przez niniejszego użytkownika
» 2021-10-12 16:23:32
C/C++
int main()
{
   
const float dystansMILELADOWE = 1609;
   
const float dystansCALE = 39.3;
   
const float dystansSTOPY = 3.2;
   
const float dystansJARDY = 1.09;
   
const float dystansMILEMORSKIE = 1852;
   
float MilaLadowa;
   
float Cal;
   
float Jard;
   
float MilaMorska;
   
float dystansM;
   
   
printf( "%s", "Podaj dystansM: " );
   
scanf( "%d", & dystansM );
   
MilaLadowa = dystansM * dystansMILELADOWE;
   
Cal = dystansM * dystansCALE;
   
Jard = dystansM * dystansJARDY;
   
MilaMorska = dystansM * dystansMILEMORSKIE;
   
printf( "Odleglosc w Milach Ladowych: %d \n", MilaLadowa );
   
printf( "Odleglosc w Calach: %d \n", Cal );
   
printf( "Odleglosc w Jardach: %d \n", Jard );
   
printf( "Odleglosc w Milach Morskich: %d \n", MilaMorska );
}
Poprawione ale wychodzi wszędzie 0
P-179012
DejaVu
» 2021-10-12 16:43:48
%d to int, a nie float, więc źle wczytuje Ci wartość do zmiennej.
P-179013
pekfos
» 2021-10-12 18:17:18
%d to int, a nie float, więc źle wczytuje Ci wartość do zmiennej.
To dotyczy również printf(), powinno być %f przy wprowadzaniu i wypisywaniu danych.

Swoją drogą, pierwszy kod dołącza <iostream>, więc czemu scanf() i printf()? Odpowiedniki z C++ nie wymagają podawania dokładnych typów.
» Kurs C++» Poziom 1Obsługa strumienia wejściowego lekcja
P-179015
« 1 »
  Strona 1 z 1