Zahlen ordnen < C/C++ < Programmiersprachen < Praxis < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 12:47 So 13.12.2009 | Autor: | az118 |
Aufgabe | Der Nutzer möchte drei beliebige ganze Zahlen geordnet auf dem Bildschirm ausgegeben
lassen. Schreiben Sie eine Funktion, die das Ordnen der Zahlen übernimmt! Rufen Sie im
Hauptprogramm die Funktion auf, um drei zuvor einzulesende Zahlen zu ordnen! Geben
Sie anschliessend die geordneten Zahlen aus! |
Hallo, also iich habe mal versucht das Programm zu schreiben.Mein Problem ist nun aber, dass das Programm mir zwar die kleinste Zahl ausgibt, aber die anderen zwei Zahlen nicht mehr? Wäre nett, wenn mal jemand drüber gucken könnte. Danke
# include <stdio.h>
int ordne ( int *, int *,int *);
int tausche (int *, int *);
int tausche (int *x, int *y){
int hilf ;
hilf = *x;
*x = *y;
*y = hilf ;
return 0;
}
int ordne ( int *wert1 ,int *wert2 ,int * wert3 ){
if (* wert1 >* wert2 ){
tausche (wert1 , wert2 );
}
if (* wert2 >* wert3 ){
tausche (wert2 , wert3 );
}
if (* wert1 >* wert2 ){
tausche (wert1 , wert2 );
}
return 0;
}
int main(){
int wert1,wert2,wert3;
printf("Bitte geben Sie den ersten Wert ein: ");
scanf("%i",&wert1);
printf("Bitte geben Sie den zweiten Wert ein: ");
scanf("%i",&wert2);
printf("Bitte geben Sie den dritten Wert ein: ");
scanf("%i",&wert3);
ordne (&wert1 ,&wert2 ,&wert3);
printf("Die geordneten Zahlen lauten: %i",wert1,wert2,wert3);
[mm] while(getchar()!='\r');
[/mm]
return 0;
}
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 15:06 So 13.12.2009 | Autor: | felixf |
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Hallo!
> Der Nutzer möchte drei beliebige ganze Zahlen geordnet auf
> dem Bildschirm ausgegeben
> lassen. Schreiben Sie eine Funktion, die das Ordnen der
> Zahlen übernimmt! Rufen Sie im
> Hauptprogramm die Funktion auf, um drei zuvor einzulesende
> Zahlen zu ordnen! Geben
> Sie anschliessend die geordneten Zahlen aus!
> Hallo, also iich habe mal versucht das Programm zu
> schreiben.Mein Problem ist nun aber, dass das Programm mir
> zwar die kleinste Zahl ausgibt, aber die anderen zwei
> Zahlen nicht mehr? Wäre nett, wenn mal jemand drüber
> gucken könnte. Danke
>
> # include <stdio.h>
>
> int ordne ( int *, int *,int *);
> int tausche (int *, int *);
>
>
> int tausche (int *x, int *y){
> int hilf ;
> hilf = *x;
> *x = *y;
> *y = hilf ;
> return 0;
> }
>
>
> int ordne ( int *wert1 ,int *wert2 ,int * wert3 ){
>
> if (* wert1 >* wert2 ){
>
> tausche (wert1 , wert2 );
> }
> if (* wert2 >* wert3 ){
> tausche (wert2 , wert3 );
> }
>
> if (* wert1 >* wert2 ){
> tausche (wert1 , wert2 );
> }
>
> return 0;
> }
>
> int main(){
> int wert1,wert2,wert3;
>
> printf("Bitte geben Sie den ersten Wert ein: ");
> scanf("%i",&wert1);
> printf("Bitte geben Sie den zweiten Wert ein: ");
> scanf("%i",&wert2);
> printf("Bitte geben Sie den dritten Wert ein: ");
> scanf("%i",&wert3);
>
> ordne (&wert1 ,&wert2 ,&wert3);
Bis hierhin ist alles ok. Aber jetzt:
> printf("Die geordneten Zahlen lauten:
> %i",wert1,wert2,wert3);
gibst du nur wert1 aus, und nicht wert2 und wert3.
LG Felix
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 17:10 So 13.12.2009 | Autor: | az118 |
Ach ja,muss ja nochmal je ein printf für wert2 und wert3 schreiben.
Ok klappt jetzt. Danke
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 17:12 So 13.12.2009 | Autor: | fencheltee |
> Ach ja,muss ja nochmal je ein printf für wert2 und wert3
> schreiben.
> Ok klappt jetzt. Danke
nein da reicht eins...
printf("wert1 %d, wert2 %d, wert3 %d", a, b,c);
gruß tee
|
|
|
|