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

Petla

Ostatnio zmodyfikowano 2012-12-29 14:37
Autor Wiadomość
kuba465
Temat założony przez niniejszego użytkownika
Petla
» 2012-12-29 13:20:30
Witam, przerobiłem wczorajszy program i teraz wygląda tak:
C/C++
#include <stdio.h>
#include <stdlib.h>

int main( void )
{
    int stopy;
    float centy, cale;
   
    centy = 1;
    while( centy >= 0 ) {
        printf( "Podaj wzrost w centymetrach: \n" );
        scanf( "%f", & centy );
       
        stopy = centy / 30;
        cale = centy / 2.54;
       
        printf( "%3.2f cm = %d stop i %2.1f cali", centy, stopy, cale );
    }
   
    printf( "Zakończenie petli" );
   
    system( "PAUSE" );
    return 0;
   
}
Tyle, że nie mam pomysłu jak zrobić żeby dobrze liczyło cale oraz żeby pętla zatrzymywała się po wpisaniu wartości nieujemnej. Bo jak wpisałem -1 to wyliczyło jakieś liczby i dopiero się zakończyło.
P-72257
jsc
» 2012-12-29 13:25:14
Bo wylicza zanim sprawdza warunek przejścia do nowej iteracji.
P-72258
kuba465
Temat założony przez niniejszego użytkownika
» 2012-12-29 13:26:44
to można to zrobić jakoś posługując się samą pętlą while?
P-72259
jsc
» 2012-12-29 13:33:08
Kod odpowiedzialny za pobieranie centymetrów wypychasz przed pętlę i jednocześnie umieszczasz go tuż przed klamrą zamykającą pętlę.
P-72260
kuba465
Temat założony przez niniejszego użytkownika
» 2012-12-29 13:38:36
Bardzo dziękuję pomogło :) tylko teraz mam problem z wyliczeniem cali... bo można by użyć funkcji modulo, ale ona nie działa na liczbach zmiennoprzecinkowych... bo program wylicza cale z calem puli centymetrow a powinien z tego co zostało z dzieleni centy / 30... Masz może jakiś pomysł na to?
P-72261
jsc
» 2012-12-29 13:49:14
Trzeba zrzutować centymetry na float lub zapisać 30 jako 30.00.
P-72263
kuba465
Temat założony przez niniejszego użytkownika
» 2012-12-29 14:02:50
Nie bardzo wiem o co chodzi w rzutowaniu bo tego jeszcze nie miałem... Ale przecież centymetry już są we floacie.
P-72264
jsc
» 2012-12-29 14:18:09
Ale spróbuj z tym 30.00.
P-72268
« 1 » 2
  Strona 1 z 2 Następna strona