Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Informatik in der Schule » Programieren » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Seiten (3): [1] 2 3 nächste » Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Programieren
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
info ( beste )
unregistriert
Programieren Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo leute ich poste mal eine Aufgabe zum üben:

Es ist ein Programm zu erstellen, welche Datentypen
int, double, bool, char und string
je eine Größe von Tastatur einliest und diese danach am Bildschirm wieder ausgibt. Wählen Sie
dabei für jeden Typ geeignete Manipulatoren zur Darstellung der Ausgabe am Bildschirm. Jeder der
Manipulatoren soll wenigstens einmal verwendet werden.
Testen sie auch, was bei der Eingabe unzulässiger Zeichen passiert?
Hinweis zur Gestaltung der Ausgabe:
Die Ausgabe einer Größe kann durch folgende Manipulatoren verbessert werden:
setw(int n) Die nächste auszugebende Größe wird in ein Feld der Breite (mindestens) n geschrieben
right Die auszugebende Größe wird in das Feld rechtsbündig geschrieben (default)
left Die auszugebende Größe wird in das Feld linksbündig geschrieben
setprecision(int n) Die auszugebende Gleitpunktzahl hat (maximal) n Stellen Genauigkeit
fixed Die auszugebende Gleitpunktzahl hat genau n Nachkommastellen (von setprecision)
endl Neue Zeile
Erforderlich ist hierfür die Direktive #include <iomanip>. Weitere Manipulatoren finden sich in der Literatur.
Die Manipulatoren müssen vor der auszugebenden Größe erscheinen.
Beispiel:
betrag1=1.2;
betrag2=1.23456;
cout << setprecision(2)<<fixed<<setw(6)<<betrag1<< setprecision(4)<<setw(8)<<betrag2<<endl;
cout<<setw(6)<<left<<12<<setw(6)<<right<<13<<endl;
Ergebnis:
1.20 1.2346
12 13


Am anfang wäre ich schon für tips dankbar.
22.01.2013 20:57
Karlito Karlito ist männlich
Kaiser


Dabei seit: 11.04.2011
Beiträge: 1.461

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

http://www.c-plusplus.de/forum/309118-full
22.01.2013 23:25 Karlito ist offline E-Mail an Karlito senden Beiträge von Karlito suchen Nehmen Sie Karlito in Ihre Freundesliste auf
info
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Naja danke , aber ich wollte irgendwie selber drauf kommen .

Die lösung hilft mir ja nicht viel.
23.01.2013 00:05
Karlito Karlito ist männlich
Kaiser


Dabei seit: 11.04.2011
Beiträge: 1.461

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Find ich gut, mach mal einen Vorschlag oder stelle konkrete Fragen...

VG,

Karlito
23.01.2013 00:47 Karlito ist offline E-Mail an Karlito senden Beiträge von Karlito suchen Nehmen Sie Karlito in Ihre Freundesliste auf
info
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

#include <cstdlib>
#include <iostream>
#include <iomanip>

using namespace std;



int main()
{

int Zahl1;

int Zahl2;

cout << "Geben sie eine Zahl ein !" << "Zahl1" <<endl;

cout << " Geben sie eine zweite Zahl ein "" << " Zahl2 " << endl;

cin>> Zahl;

cout << setw(5) << right <<showpos << Zahl1 << dec << endl;

cout << setw(5) << left <<showpos << Zahl1 << dec << endl;




system("PAUSE");
return EXIT_SUCCESS;
return 0;
}
11.02.2013 12:00
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Das ist so nicht lauffähig:
cout << "Geben sie eine Zahl ein !" << "Zahl1" <<endl;
Was soll das sein? Einlesen von Zahl1 geht mit
cin >> Zahl1;

Das 2. cout ist noch verkehrter, da einmal " zuviel

cin>> Zahl;
Die Variable Zahl wurde nirgends definiert.

__________________
Syntax Highlighting fürs Board (Link)
11.02.2013 13:20 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
info
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich hab es mittlerweile so das es läuft:

#include <cstdlib>
#include <iostream>
#include <iomanip>

using namespace std;



int main()
{

int Zahl1;

int Zahl2;





cout << "Geben sie eine Zahl ein !" << endl;

cin>> Zahl1;

cout << " Geben sie eine zweite Zahl ein! "<< endl;

cin>> Zahl2;





cout << setw(5) << right <<showpos << Zahl1 << dec << endl;

cout << setw(5) << left <<showpos << Zahl2 << dec << endl;




system("PAUSE");

return 0;
}


Jetzt müsste ich ein programm mit double erstellen oder?
11.02.2013 19:33
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Es ist ein Programm zu erstellen, welche Datentypen
int, double, bool, char und string
je eine Größe von Tastatur einliest und diese danach am Bildschirm wieder ausgibt.

Dann fang' mal an, viel ist es ja nicht!

__________________
Syntax Highlighting fürs Board (Link)
12.02.2013 13:34 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
info
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hey leute ich hab bisschen rumprobiert und mein code funktioniert auch soweit.

Jetzt wollte ich mein summiertes ergebnis rechtsbündig nazeigen in einer neuen Zeile .

Ich habs auch irgendwie in meinem code eingegeben , aber das programm macht nichts.

#include <iostream>
#include <iomanip>
using namespace std;



int main() {

double nummer1 = 0;

double nummer2= 0;







std::cout << "Geben sie die erste Zahl an mit der die zweite addiert werden soll an !" << std::endl;

std::cin >> nummer1;

std::cout << "Geben sie die zweite Zahl an !"<< std::endl;

std::cin >> nummer2;

std::cout << "Die Summe von den zwei Zahlen ist" << " " << nummer1+nummer2 << endl << setw(4) << right <<std::endl;









return 0;
}
12.02.2013 13:40
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Du musst ja auch erst die Eigenschaften festlegen und dann die Zahl ausgeben.
Mit setw() bestimmst du, wie viel Platz insgesamt verbraucht werden soll.
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
#include <iostream>
#include <iomanip>
using namespace std;

int main() 
{
	double nummer1 = 0;
	double nummer2 = 0;
	cout << "Geben sie die erste Zahl an mit der die zweite addiert werden soll an !" << endl;
	cin >> nummer1;
	cout << "Geben sie die zweite Zahl an !"<< endl;
	cin >> nummer2;
	cout << "Die Summe von den zwei Zahlen ist:\n" << setw(10) << right  << nummer1+nummer2 <<endl;
	system("PAUSE");
	return 0;
} 


__________________
Syntax Highlighting fürs Board (Link)
12.02.2013 15:01 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
info
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ok leute ich hatte mich jetzt an bool dran gehängt , aber mein programm zeigt wieder mal Fehler an.

Ich hab auch gleichzeitig versucht mit string zu arbeiten.

Hab versucht mit büchern zu arbeiten.

SInd aber immer noch Fehler drin leider.

#include <iostream>
#include <iomanip >
#include< stringh >
using namespace std;

int main() {
string s1 = "Geben sie eine Zahl zwischen 1 bis 100 an!";

cin >> s1;

bool bedingung = true;

if(s1>= 100){

bedingung = true;

cout <<setprecision(2)<<fixed<<setw(6)<< right << s1 << endl;

else() {
bedingung = false;

cout << " Die angegebene Zahl ist zu gross!"<< endl;
}
}


return 0;
}
13.02.2013 11:52
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Etwas mehr Mühe kannst du dir dann duch geben: wenn ich die Zeilen in VisualStudio2010 kopiere, kriege ich direkt Fehlermeldungen, Kompilieren ist nicht möglich.
Syntaxfehler: (Nummer, Beschreibung, Zeile, Spalte)
code:
1:
2:
3:
4:
5:
1	IntelliSense: Die Datei "Quelle" kann nicht geöffnet werden: "stringh".	3	1
2	IntelliSense: Kein ">>"-Operator stimmt mit diesen Operanden überein.	9	5
3	IntelliSense: Kein ">="-Operator stimmt mit diesen Operanden überein.	13	6
4	IntelliSense: Kein "<<"-Operator stimmt mit diesen Operanden überein.	17	48
5	IntelliSense: Es wurde eine Anweisung erwartet. 	  		19	1

Gründe sind:
1. string //ohne h
2. weil #include <string> fehlte
wenn ich mir den weiteren Verlauf des Programms ansehe, macht ein string hier aber keinen Sinn
3. string>=100 ergibt entsprechend auch keinen Sinn, wie soll man so verschiedene Datentypen vergleichen?
4. weil #include <string> fehlte
5. if (Bedingung) { ...else() { ... } ... }
seltsames Konstrukt, richtig wäre: if (Bedingung) { ... } else { ... }

Zum Sinn:
Wenn du "Geben sie eine Zahl zwischen 1 bis 100 an!" ausgeben willst, brauchst du auch ein cout.
Was du mir der Variable "bedingung" bezweckst, erschließt sich mir nicht.

__________________
Syntax Highlighting fürs Board (Link)
13.02.2013 12:28 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
info
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ja ich wollte Geben sie eine.... als string ausgeben ,

daher hatte ich das cout weggelassen.

Wie würde ich denn eine ausgabe mittels string ausgeben.
13.02.2013 13:35
info
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Mein programm sieht jetzt so aus:

#include <iostream>
#include <iomanip >
#include< string >
using namespace std;

int main() {
string s1 = "Geben sie eine Zahl zwischen 1 bis 100 an!";

cin >> s1;

bool bedingung = true;

if(bedingung>= 100){

bedingung = true;

cout <<setprecision(2)<<fixed<<setw(6)<< right << s1 << endl;

else() {
bedingung = false;

cout << " Die angegebene Zahl ist zu gross!"<< endl;
}
}


return 0;
}


Es funktioniert leider immer noch leider nicht .

Mir wird ein fehler für diese Zeile angezeigt:

cout <<setprecision(2)<<fixed<<setw(6)<< right << s1 << endl;


Nur so ne nebenfrage ist es nicht egal wie ich mein bool nenne ?

Ich hab es einfach bedingung genannt.

Wäre eigentlich die idee die ich bei diesem programm hatte für die Aufgabe in ordnung?
13.02.2013 13:39
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Original von info
Es funktioniert leider immer noch leider nicht .

Weil du nicht auf das eingehst, was ich dir geschrieben habe.
Lassen wir mal beiseite, dass das Programm nicht machen wird, was du von ihm willst und kümmern uns um den syntaktischen Unfug:
Die Ausgabe mit cout << ... ist so ok.
Das eigentliche Problem hatte ich in meinem letzten Beitrag unter Punkt 5 schon benannt.

__________________
Syntax Highlighting fürs Board (Link)
13.02.2013 13:58 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Seiten (3): [1] 2 3 nächste » Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Informatik in der Schule » Programieren