Mein Programm einfach machen

12/26/2011 15:14 Mr.Help#1
Hallo hab ein c++ programm gemacht als übung ist es gut oder zu kompleziert wenn ja wie kann man es einfacher machen mit wenig text

Code:
#include <iostream>

using namespace std; 

int main()

{

float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;


cout << "wie viele 1 hast du?" << endl;

cin >> a;

cout << "wie viele 2 hast du?" << endl;

	cin >> b;

	cout << "wie viele 3 hast du?" << endl;

	cin >> c;

	cout << "wie viele 4 hast du?" << endl;

		cin >> d;

		cout << "wie viele 5 hast du?" << endl;

		cin >> e;

		cout << "wie viele 6 hast du?" << endl;

		cin >> f;
	  
		g=a*1;
		h=b*2;
			i=c*3;
			j=d*4;
			k=e*5;
			l=f*6;

			m=g+h+i+j+k+l;

			o=a+b+c+d+e+f;

			n=m/o;




cout << "Dein noten durchschnitt ist " << n << endl;


cout << "Bist du zufrieden? " << endl;

system("Pause");











}
12/26/2011 15:22 xNopex#2
Ja es geht einfacher -> Arrays und Schleifen
12/26/2011 19:41 ms​#3
Wenn dann auch noch die ganzen unnötigen leeren Zeilen entfernen würdest, dann wäre dein Programm zumindest einfacher zu lesen.
12/26/2011 22:42 jacky919#4
Code:
float notenanzahl[6];
for(int i=0; i<6;i++){
cout << "Wie viele " << i+1 << "hast du? ";
cin >> notenanzahl[i];
}
12/27/2011 12:52 .SkyneT.#5
Quote:
Originally Posted by jacky919 View Post
Code:
float notenanzahl[6];
for(int i=0; i<6;i++){
cout << "Wie viele " << i+1 << "hast du? ";
cin >> notenanzahl[i];
}
Why float ?

Ich denke nicht das er 1,1 Einsen hat oder 2,4 Dreier ... :rolleyes:
int bzw unsigned int wäre passender, auch wenns kein wirklicher Fehler ist.
12/27/2011 14:35 MoepMeep#6
Quote:
Originally Posted by .SkyneT. View Post
Why float ?

Ich denke nicht das er 1,1 Einsen hat oder 2,4 Dreier ... :rolleyes:
int bzw unsigned int wäre passender, auch wenns kein wirklicher Fehler ist.
Der TE wird sicherlich noch nicht bei casts sein ;o
12/27/2011 15:10 MrSm!th#7
Wieso casts? cin liest formatiert, ein, d.h. wenn der User einen Fehler macht und eine Dezimalzahl eingibt, wird die auch so in der Notenanzahl gespeichert.

Außerdem, ob es nun eine Auswirkung hätte oder nicht, ein logischer Fehler bleibts trotzdem und solche sollte man von Anfang an vermeiden :f
12/27/2011 15:31 MoepMeep#8
Quote:
Originally Posted by MrSm!th View Post
Wieso casts? cin liest formatiert, ein, d.h. wenn der User einen Fehler macht und eine Dezimalzahl eingibt, wird die auch so in der Notenanzahl gespeichert.

Außerdem, ob es nun eine Auswirkung hätte oder nicht, ein logischer Fehler bleibts trotzdem und solche sollte man von Anfang an vermeiden :f
War eher auf die rechnung bezogen, int/int = int, kk?
12/27/2011 17:00 MrSm!th#9
Und wo ging es bitte darum?
12/27/2011 17:19 MoepMeep#10
Quote:
Originally Posted by MrSm!th View Post
Und wo ging es bitte darum?
Hm stimmt, so wie der TE es gemacht hat würde es nicht zu Problemen kommen ;o