przemekkk Temat założony przez niniejszego użytkownika |
Choinka, pętla while » 2015-11-16 19:57:13 Witam zrobiłem taki program w języku C za pomocą pętli for, ale teraz mam taki sam program zrobić używając pętli while. Nie mogę sobie z tym poradzić. Czy ktoś może mi pomóc? int main() { int i, j, a; printf( "podaj wysokosc drzewka \n" ); scanf( "%d", & a ); for( i = 0; i < a; i++ ) { printf( "%*c", a - i, ' ' ); for( j = 0; j <= i; j++ ) printf( " *" ); putchar( '\n' ); } printf( "%*c*\n", a + 1, ' ' ); getchar(); getchar(); return 0; } |
|
carlosmay |
» 2015-11-16 22:14:35 for( i = 0; i < a; i++ ) { }
i = 0; while( i < a ) { i++; }
|
|
przemekkk Temat założony przez niniejszego użytkownika |
» 2015-11-16 22:43:37 A co mam zrobić z drugim for'em? |
|
michal11 |
» 2015-11-16 22:50:58 Ja bym zrobił analogicznie, tylko i zamienił na j z przykładu carlosmay. |
|
przemekkk Temat założony przez niniejszego użytkownika |
» 2015-11-17 09:23:35 int main() { int i, j, a; printf( "podaj wysokosc drzewka \n" ); scanf( "%d", & a ); i = 0; j = 0; while( i < a ) { printf( "%*c", a - i, ' ' ); i++; } while( j <= i ); { printf( " *" ); putchar( '\n' ); j++; } printf( "%*c*\n", a + 1, ' ' ); getchar(); getchar(); return 0; } zrobiłem tak, ale teraz nic nie wyświetla w programie. |
|
carlosmay |
» 2015-11-17 11:08:20 W twoim przykładzie pętle 'for' są zagnieżdżone, a pętle 'while' następują jedna po drugiej (mają też być zagnieżdżone). |
|
przemekkk Temat założony przez niniejszego użytkownika |
» 2015-11-17 11:37:27 int main() { int i, j, a; printf( "podaj wysokosc drzewka \n" ); scanf( "%d", & a ); i = 0; j = 0; while( i < a ) { printf( "%*c", a - i, ' ' ); while( j <= i ) printf( " *" ); putchar( '\n' ); i++; j++; } printf( "%*c*\n", a + 1, ' ' ); getchar(); getchar(); return 0; } Nie wiem czy dobrze zrozumiałem, ale zrobiłem coś takiego. Po włączeniu programu * ciągle się pojawiają. |
|
carlosmay |
» 2015-11-17 11:42:37 Prawie. Zmienna 'j' powinna być zerowana przed każdym uruchomieniem wewnętrznej pętli, a inkremantacja zmiennej 'j' powinna odbywać się w pętli wewnętrznej. |
|
« 1 » 2 |