C: Zahlenpaare einlesen und vertauschen/quadrieren. Wie?

necoicould

Lieutenant
Registriert
Feb. 2009
Beiträge
537
Hallo ich soll:
5 reale Zahlenpaare [a, b] mit Hilfe der scanf Funktion einlesen.
und

a) für jedes a > b sollen beide Werte vertauscht werden.
b) sonst sollen jeweils die Quadrate von a und b gebildet werden.

Ich habe bis jetzt folgendes gemacht. Hab's in Eclipse gemacht welcher nur "EINGABE: A,B = " ausgibt. Eine Eingabe fordert Eclipse gar nicht (kann er das überhaupt?)

iwie scheint das Fehlerhaft zu sein, was habe ich falsch gemacht?

#include <stdio.h>
#include <stdlib.h>
int main(){
float a;
float b;
int i=0;
int n=5;
float h;

for(i=1;i<=n;i++)
{
printf("\n\n EINGABE: A,B = ");
scanf("%f%f",&a,&b);
if(a>b)
{
h=a; a=b; b=h;
}
else
{
a=a*a; b=b*b;
}
}
}
 
Was genau ist deine Frage?

Willst du die Daten weiterverarbeiten? weil du überschreibst jedes mal "a" und "b"

vielelicht solltest du genauer erklären was du machen willst und wie du mit den Daten weiter arbeitest.
 
hi,

sieht alles OK aus,

Eine Eingabe fordert Eclipse gar nicht (kann er das überhaupt?)
Das hat nichts mit eclipse zu tun, scanf gibt nichts aus, einfach davor ein
printf("Zahlenpaar eingeben: ")...

Eine Ausgabe hast du ja auch nicht drin,
in der for Schleife noch nen printf wo du a und b wieder ausgibst.

gruß
 
Naja ich soll laut Aufgabenstellung ja durch eine Eingabeaufforderung 5 Zahelnpaare eingeben die unabhängig voneinander diese "for" schleife durchlaufen.

Folgende For-Schleife wurde mir als "Tipp" vorgeschlagen, welche ich auch genutzt habe.

Ich habe also vor z.b

a b
3 4
6 5
usw einzugeben. Dann sollte er beim ersten (3 4) würden die dann quadriert werde da a NICHT > b. Quasi Ausgabe: 9 16

beim zweiten (6 5) da a > b werden beide ausgetausch: Ausgabe: 5 6

und das alles 5 mal...



for(i=1;i<=n;i++)
{
printf("\n\n EINGABE: A,B = ");
scanf("%f%f",&a,&b);
if(a>b)
{
h=a; a=b; b=h;
}
else
{
a=a*a; b=b*b;
}
 
na also dann passt doch alles? Dir fehlt nur noch eine Ausgabe.
einfach noch ein

printf("%f, %f ", a, b);

am Ende der for-Schleife.
 
yippiiii :) danke
 
Die Funktion in die Main packen eine Ausgabe mit printf dazu und die Variablen deklarieren, und schon sollte das so funktionieren.
 

Ähnliche Themen

Zurück
Oben