Übungsaufgaben C++

analdo

Donator
26 Jun 2011
2,677
1,798
#1
Da hier manche ja in C++ einsteigen wollten, denke ich dass ein paar Übungen gar nicht so schlecht wären.
Da ich Programmieren als Fach habe, dachte ich mir das ich einfach mal ein paar der Aufgaben die wir machen für euch hochlade weil diese an Anfänger gerichtet sind und somit relativ einfach sind.
Wenn Interesse daran besteht lade ich euch gerne nach jeder Stunde die Aufgaben hoch, wenn wir welche gemacht habe.


Erste Aufgabe:

Erstelle ein Programm das die Eingabe zweier Zahlen addiert und eine Summe ausgibt.
Füge einen Kommentar in die Kopfzeile ein in der das Datum und dein Username enthalten ist.


Lösung:
/* analdo
02.02.2015 */

#include <iostream>

using namespace std;

int main() {

//Deklaration der Variablen
int zahl1, zahl2, summe;

cout<<"Addition zweier Zahlen"; //Ausgabe Überschrift
cout<<endl; //Zeilensprung
cout<<"-----------------------------";
cout<<endl<<endl;

//Eingabe
cout<<"Zahl 1 eingeben: ";cin>>zahl1;
cout<<endl;
cout<<"Zahl 2 eingeben: ";cin>>zahl2;
cout<<endl;

//Verarbeitung
summe=zahl1+zahl2;

//Ausgabe
cout<<"Summe: "<<summe;
cout<<endl;

return 0;
}

Weitere Aufgaben:
So hier mal komplett alle Linearen Aufgaben die ich hier habe mit Bildern etc., sind glaube ich auch welche dabei die ich schon hier hatte.
Hab sie einfach mal vom Aufgabenblatt kopiert.

Erstellen sie nach der unteren Abbildung ein Programm:

Die Umrechnung von Fahrenheit in Grad Celsius entnehmen Sie bitte dem Internet.

Erstellen Sie ein Programm zur Berechnung von Umfang und Fläche eines Kreises.:

Die Berechnungen entnehmen Sie dem Internet!

Erstellen sie ein Programm, mit dem der durchschnittliche Benzinverbrauch eines Kraftfahrzeugs auf 100 km berechnet werden kann.
Die Ausgabe kann folgendermaßen aussehen:

Ein Büroartikeleinzelhändler möchte den Bruttoverkaufspreis seiner Waren mit einem Programm berechnen. Er verwendet dazu die Zuschlagskalkulation. Die Prozentsätze der Zuschlagskalkulation sind dem Beispiel zu entnehmen.
Der einzige Eingabewert für dieses Programm ist der Bezugspreis.

Schreiben Sie ein Programm, bei dem nach Eingabe einer Zahl die Wurzel berechnet
werden soll. Dies soll jedoch nur geschehen, wenn die Zahl größer oder gleich null ist. Die Ausgabe soll formatiert auf zwei Nachkommastellen erfolgen. Nach der Eingabe einer negativen Zahl soll die Meldung „Die Wurzel negativer Zahlen kann nicht berechnet werden!“ ausgegeben werden.

Zur Berechnung der Wurzel wird eine Funktion benötigt. Hierzu ist die Header-Datei
<cmath> einzubinden. Eine Funktion gibt einen Wert an eine Variable zurück. In diesem Fall: variable=sqrt(variable1);
Die in der Klammer stehende Variable ist der Wert, aus dem die Wurzel gezogen wird. Die links vom Gleichheitszeichen stehende Variable nimmt das Ergebnis auf.

Dont know ob der Thread hier gewünscht ist, könnts ja aber auch in OT verschieben :d
 
Last edited:

no1r

Hack User
13 Dec 2014
115
11
#2
Fände ich super wenn du das machst.
Arbeite mich zur Zeit durch ein C++ Buch. Übungsaufgaben sind sicher hilfreich, um das gelernte zu verinnerlichen.
Also bin ich gerne mit dabei :smile:
//Dev @02.02.15
#include<iostream>
using namespace std;

int main(){
//Bennenung der Variablen
int summe1;
int summe2;
int summegesamt;

//Eingabe
cout << "Zwei Zahlen eingeben! " << endl;
cout << "Zahl 1" << endl;
cin >> summe1;

cout << "Zahl 2" << endl;
cin >> summe2;
//Formel
summegesamt = summe1 + summe2;

//Ausgabe
cout << "Ergebnis= " << summegesamt << endl;
return 0;
E1
Sehe schon den Header hab ich nicht richtig :smile:
E2
cout<<"Zahl 1 eingeben: ";cin>>zahl1; // Wußte ich nicht mal dass man das so schreiben kann.
 
Last edited:

ge1st

Donator
30 Dec 2011
2,851
1,074
#3
Sollte man seine Variablen nicht bei der Deklaration direkt initialisieren? So ist das bei mir zumindest üblich, ich programmiere allerdings Host-Anwendungen.

int iZahl1 = 0, iZahl2 = 0, iSumme = 0;
 

analdo

Donator
26 Jun 2011
2,677
1,798
#4
Kann ich dir nicht sagen, wir habens so in der Schule gemacht, habs einfach nur so kopiert wie ichs gelernt hatte, war aber auch das erste was wir gelernt haben.
Muss nur mal am Donnerstag die restlichen Sachen vom PC runterziehen, hab nicht mehr alles zuhause.
Werd später mal unsere zweite Arbeit hochladen und etwas später die Lösungen, ist halt Wirtschaftsinformatik.
 

ge1st

Donator
30 Dec 2011
2,851
1,074
#5
Kann ich dir nicht sagen, wir habens so in der Schule gemacht, habs einfach nur so kopiert wie ichs gelernt hatte, war aber auch das erste was wir gelernt haben.
Muss nur mal am Donnerstag die restlichen Sachen vom PC runterziehen, hab nicht mehr alles zuhause.
Werd später mal unsere zweite Arbeit hochladen und etwas später die Lösungen, ist halt Wirtschaftsinformatik.
C++ ist C++, egal wo und wann du das lernst. Aber so allgemeine Regeln, die sprachenunabhängig gültig sind, solltet ihr doch schon einhalten. Beispiel:

- Kein goto verwenden
- Vernünftig kommentieren, damit andere sich auch in dein Programm einlesen können (wenn du im Urlaub bist z.B.)
- Ordentliche Namen für die Variablen nehmen
- Variablen bei Deklaration direkt Initialisieren (mit 0 / blank)
 

analdo

Donator
26 Jun 2011
2,677
1,798
#6
Wie gesagt ich hab nicht viel Plan davon, stell hier nur die Übungsaufgaben so rein wie wir sie in der Schule machen und so wie ich es in der Schule lerne und ich hab Programmieren erst seit dem derzeitigen Schuljahr.
Hab z.B. noch nie was davon gehört "Variablen bei Deklaration direkt Initialisieren (mit 0 / blank)", goto haben wir erst gar nicht erklärt bekommen weil wir es nicht verwenden sollen, Ordentliche Namen ist eigentlich selbstverständlich gibt aber keinen Punktabzug bei uns wenn die Namen völlig bescheuert sind, hauptsache unser Lehrer rafft was da vor sich geht und merkt das wirs auch verstanden haben.

Und mit dem "ist halt Wirtschaftsinformatik" meinte ich die Aufgaben.
Sind immer Aufgaben die was mit Wirtschaft zu tun haben.
 

ge1st

Donator
30 Dec 2011
2,851
1,074
#7
Wie gesagt ich hab nicht viel Plan davon, stell hier nur die Übungsaufgaben so rein wie wir sie in der Schule machen und so wie ich es in der Schule lerne und ich hab Programmieren erst seit dem derzeitigen Schuljahr.
Hab z.B. noch nie was davon gehört "Variablen bei Deklaration direkt Initialisieren (mit 0 / blank)", goto haben wir erst gar nicht erklärt bekommen weil wir es nicht verwenden sollen, Ordentliche Namen ist eigentlich selbstverständlich gibt aber keinen Punktabzug bei uns wenn die Namen völlig bescheuert sind, hauptsache unser Lehrer rafft was da vor sich geht und merkt das wirs auch verstanden haben.
Mit dem initialisieren meine ich, dass du ihnen direkt einen Wert zuweist. Eben alle numerischen Datentypen mit 0 und alle alphabetischen Datentypen mit einem Leerzeichen. Hat bei uns den Grund, dass wir ja nicht wissen, wo im Speicher unsere Variablenwerte liegen und es sein kann, dass da, von wo eine Variable ihren Wert bekommt, schon etwas anderes steht. Wie gesagt, ist Host-Programmierung, etwas ganz anderes, wollte nur darauf hinweisen, wäre ja blöd, wenn es wegen solchen Kleinigkeiten Punktabzug gibt.
 
22 Oct 2014
253
111
#8
/* bratmaxxxle
02.02.2015 */

#include <iostream>

using namespace std;

int main()
{
cout << "Geben Sie zwei Zahlen ein:" << endl;
int summand1 = 0, summand2 = 0;
cin >> summand1 >> summand2;
int summe = summand1 + summand2;
cout << "Die Summe von " << summand1 << " und " << summand2
<< " ergibt " << summe << endl;
cin.get();
return 0;
}

würde mich über "knifflige" aufgaben freuen da man die summe zu berechnen auf den ersten 3 seiten jedes c++ buch lernt.
 

analdo

Donator
26 Jun 2011
2,677
1,798
#9
Spiele mein Game noch fertig dann poste ich euch mal meine letzte Klausur.

So wie du das gemacht hast meinte Geist das oder? also int summand = 0 oder?


Klausur:

Auf Jahresgehälter unter 30.000,-€ entfällt keine Steuer.
Für Gehälter ab 30.000,-€ bis 80.000,-€ werden 24% Steuern erhoben.
Für "Reiche" ab 80.001,-€ werden 35% erhoben.

Da die Regierung ein Herz für Familien entdeckt hat, wird pro Kind von der Steuer ein Betrag von 350,-€ abgezogen.

Bei Verheirateten und bei eheähnlichen homosexuellen Lebensgemeinschaften werden die Einkommensgrenzen verdoppelt.

Entwerfen sie ein Programm, um die Steuerlast, die Kinderentlastung und die eigentliche Zahllast selbstständig zu berechnen.

Ich habe die Aufgabe mit If/Else gelöst, gibt aber natürlich auch andere Lösungswege.


Programm soll dann so aussehen (Zahlen sind als Beispiel, stimmen aber so!)
Berechnung der Steuerlast
-----------------------------------

Familienstand eingeben:

1 Eheliches Verhaeltnis
2 Kein eheaehnliches Verhaeltnis

Auswahl treffen: 1

Jahresgehalt eingeben: 200000

Kinderzahl eingeben: 4

Steuerlast: 70000.00
Kinderentlastung: 1400.00
Zahllast: 68600.00

(Die Zahlen sollen untereinander stehen also mit setprecision und setw)

Meine "Musterlösung" poste ich euch später wenns ein paar probiert haben.
 
Last edited:

Electricz

cleanlegen.de
23 Dec 2014
5,186
3,196
#10
Wäre nice wenn du thread weiterführst.
Aen wollte ja auch noch so einen machen. Ist auf jeden fall bis jetzt schonmal richtig gut wie du den Aufbau deiner Nachrichten machst. (Aufgabe und Lösung zum aufklappen)
:wink:
 

no1r

Hack User
13 Dec 2014
115
11
#11
Meine "Musterlösung" poste ich euch später wenns ein paar probiert haben.
Setze mich später noch dran. Mal sehen, ob ichs hingekomme. Habe mit If / else noch nicht viel gemacht.
€ Kann mir einer vll helfen bei so sachen vie 12312€ - 535353€. Weiß nicht wie ich daran gehen kann?
€2 ... ich machs einfach über "<,>, =="

Wäre nice wenn du thread weiterführst.
Aen wollte ja auch noch so einen machen. Ist auf jeden fall bis jetzt schonmal richtig gut wie du den Aufbau deiner Nachrichten machst. (Aufgabe und Lösung zum aufklappen)
:wink:
Der hat Berufsschule, will er aber sicher noch machen.
 
Last edited:

analdo

Donator
26 Jun 2011
2,677
1,798
#12
Genau so ists richtig mit <,>,==

AEN macht ja ne Ausbildung wie ich verstanden habe, ich mache FOS Wirtschaftsinformatik, je nachdem was er für ne Ausbildung sind ja seine Aufgaben etwas anders.
Wir bekommen eben nur Aufgaben die mit Wirtschaft zu tun haben und auch an unseren Wirtschafts und Mathe Unterricht etwas anknüpfen.

Werd aufjedenfall nach jedem Unterricht wenn wir wieder was gemacht haben hier posten.
 

no1r

Hack User
13 Dec 2014
115
11
#13
if(jahreseinkommen < 30000) jahreseinkommen30k = 1;
else if(jahreseinkommen >=30000, <= 80000) jahreseinkommen30bis80k = 1;
else if(jahreseinkommen >80001) jahreseinkommenab801k = 1;

Kann ich keine Zwei werte in eine Funktion nehmen?
 

analdo

Donator
26 Jun 2011
2,677
1,798
#14
Den gleichen Gedanken habe ich auch gehabt und hab nen Punktabzug darauf bekommen.

Habs so:
if(gehalt<30000)
else if(gehalt>80000)
else

Du kannst auch Zwei Werte mit hinein nehmen so war meine Klausur ursprünglich, für das unterstrichene hab ich nen Punkt abzug bekommen:
if(gehalt<30000){
blabla}
else if(gehalt<=30000&&gehalt>80000){blabla}
else{blabla}

Ich poste um 22 Uhr meine Musterlösung.
 
Likes: no1r

analdo

Donator
26 Jun 2011
2,677
1,798
#17
Musterlösung doch jetzt schon.
Neue Aufgaben gibts dann spätestens am Freitag, werd mir bis dahin mal alles kopieren was wir bisher gemacht haben.

/* analdo
02.02.2015 */

#include <iostream>
#include <iomanip>

using namespace std;

int main(){

//Eingabe
float gehalt, kinder, steuerlast, kinderentlassung, zahllast, ehe;

cout<<"Berechnung der Steuerlast"<<endl;
cout<<"-----------------------------------"<<endl;
cout<<endl;

cout<<"Familienstand eingeben: "<<endl<<endl;
cout<<"1 Eheliches Verhaeltnis"<<endl;
cout<<"2 Kein eheaehnliches Verhaeltnis"<<endl<<endl;

//Wenn wir in einem Eheaehnlichen Verhaeltnis leben werden die Einkommensgrenzen verdoppelt deswegen brauchen wir die Eingabe welches Verhaeltnis vorliegt

cout<<"Auswahl treffen: ";cin>>ehe;
cout<<endl<<endl;

cout<<"Jahresgehalt eingeben: ";cin>>gehalt;
cout<<endl;

cout<<"Kinderzahl eingeben: ";cin>>kinder;
cout<<endl;

//Verarbeitung


if(ehe==1){
if(gehalt<60000){
steuerlast=gehalt*0;
kinderentlassung=kinder*0;
zahllast=steuerlast-kinderentlassung;
}

else if(gehalt>160000){
steuerlast=gehalt*0.24;
kinderentlassung=kinder*350;
zahllast=steuerlast-kinderentlassung;
}

else {
steuerlast=gehalt*0.35;
kinderentlassung=kinder*350;
zahllast=steuerlast-kinderentlassung;
}
}

if(ehe==2){
if(gehalt<30000){
steuerlast=gehalt*0;
kinderentlassung=kinder*0;
zahllast=steuerlast-kinderentlassung;
}

else if(gehalt>80000){
steuerlast=gehalt*0.24;
kinderentlassung=kinder*350;
zahllast=steuerlast-kinderentlassung;
}

else {
steuerlast=gehalt*0.35;
kinderentlassung=kinder*350;
zahllast=steuerlast-kinderentlassung;
}
}

//Ausgabe

cout<<setprecision(2)<<fixed;
cout<<"Steuerlast:\t\t"<<setw(8)<<steuerlast;
cout<<endl;
cout<<"Kinderentlassung:\t"<<setw(8)<<kinderentlassung;
cout<<endl;
cout<<"Zahllast:\t\t"<<setw(8)<<zahllast;
cout<<endl;

return 0;
}
 

no1r

Hack User
13 Dec 2014
115
11
#18
Musterlösung doch jetzt schon.
Neue Aufgaben gibts dann spätestens am Freitag, werd mir bis dahin mal alles kopieren was wir bisher gemacht haben.

/* analdo
02.02.2015 */

#include <iostream>
#include <iomanip>

using namespace std;

int main(){

//Eingabe
float gehalt, kinder, steuerlast, kinderentlassung, zahllast, ehe;

cout<<"Berechnung der Steuerlast"<<endl;
cout<<"-----------------------------------"<<endl;
cout<<endl;

cout<<"Familienstand eingeben: "<<endl<<endl;
cout<<"1 Eheliches Verhaeltnis"<<endl;
cout<<"2 Kein eheaehnliches Verhaeltnis"<<endl<<endl;

//Wenn wir in einem Eheaehnlichen Verhaeltnis leben werden die Einkommensgrenzen verdoppelt deswegen brauchen wir die Eingabe welches Verhaeltnis vorliegt

cout<<"Auswahl treffen: ";cin>>ehe;
cout<<endl<<endl;

cout<<"Jahresgehalt eingeben: ";cin>>gehalt;
cout<<endl;

cout<<"Kinderzahl eingeben: ";cin>>kinder;
cout<<endl;

//Verarbeitung


if(ehe==1){
if(gehalt<60000){
steuerlast=gehalt*0;
kinderentlassung=kinder*0;
zahllast=steuerlast-kinderentlassung;
}

else if(gehalt>160000){
steuerlast=gehalt*0.24;
kinderentlassung=kinder*350;
zahllast=steuerlast-kinderentlassung;
}

else {
steuerlast=gehalt*0.35;
kinderentlassung=kinder*350;
zahllast=steuerlast-kinderentlassung;
}
}

if(ehe==2){
if(gehalt<30000){
steuerlast=gehalt*0;
kinderentlassung=kinder*0;
zahllast=steuerlast-kinderentlassung;
}

else if(gehalt>80000){
steuerlast=gehalt*0.24;
kinderentlassung=kinder*350;
zahllast=steuerlast-kinderentlassung;
}

else {
steuerlast=gehalt*0.35;
kinderentlassung=kinder*350;
zahllast=steuerlast-kinderentlassung;
}
}

//Ausgabe

cout<<setprecision(2)<<fixed;
cout<<"Steuerlast:\t\t"<<setw(8)<<steuerlast;
cout<<endl;
cout<<"Kinderentlassung:\t"<<setw(8)<<kinderentlassung;
cout<<endl;
cout<<"Zahllast:\t\t"<<setw(8)<<zahllast;
cout<<endl;

return 0;
}
Schau ich mir dann an wenn ich fertig bin oder es nicht schaffe.
Freue mich schon auf die nächste Aufgabe :wink:
 
20 Jan 2015
46
1
#20
Vielen Dank analdo analdo für den Thread.
Kannst du aber erstmal leichtere Aufgaben posten? Wäre ganz nett, da ich deine Klausur schon ziemlich schwer finde.
~
danke im vorraus
ark141 ♥

E: Die erste Aufgabe lag genau in meinem Niveau :wink: