ERLEDIGT
NEIN
NEIN
ANTWORTEN
13
13
ZUGRIFFE
625
625
EMPFEHLEN
-
09.05.07 16:47 #1
- Registriert seit
- May 2007
- Beiträge
- 1
Hallo, ich fange gerade an C zu lernen, bekomme es aber etwas nicht hin. Ich möchte ein kleines Programm schreiben, dass folgendes tut: Es soll je nach Tastatureingabe (auswahl zwischen "a" für die Berechnung von sin(x) und "b" für die Berechnung von cos(x))diese beiden Funktionen berechnen. Ich stelle mir den Programmablauf so vor:
1) a für sin(x) / b für cos(x)
2) Eingabe: a
3) für welchen Wert soll sin(x) berechnet werden?
4) Eingabe: x=1
Leider weiss ich nicht wie ich das schaffe, Bücher und Skripte haben mir dabei auch nicht geholfen..., dass ich die math.h einbinden muss weiss ich
-
09.05.07 21:17 #2
Hallöle *g*
Warum lernst du C, und nicht C++/C# (Achtung, C++ und C# sind anders!).
Wenn dein kompiler auch C++ "versteht" kann ich dir vl. helfen..
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
#include <cmath> #include <iostream> using namespace std; int main() { char was; // *g* cout<<"Bitte a für sin(x) und b für cos(x) drücken!\n"; cin>>was; double zahl; double erg; if(was=="a") { cout<<"\n\nGeben sie eine Zahl für x ein:\n"; cin>>zahl; erg = sin(zahl); //Syntax: double sin(double zahl); cout<<"sin("<<zahl<<") = "<<erg; } elseif(was=="b"){ cout<<"\n\nGeben sie eine Zahl für x ein:\n"; cin>>zahl; erg = cos(zahl); //Syntax: double cos(double zahl); cout<<"cos("<<zahl<<") = "<<erg; }
mfg
Philipp9494Bei "Lösung" eines Problems, "Erledigt" markieren !
Nichtstun macht nur dann Spaß, wenn man eigentlich viel zu tun hätte.
Noel Coward
Was nützt uns die schönste künstlichste Intelligenz, wenn wir keine natürliche haben?
Programm: Fortunes
MyPi
-
10.05.07 14:12 #3
Hallo,
was ist denn der Unterschied zwischen math.h und cmath?"Alles, was bloß wahrscheinlich ist, ist wahrscheinlich falsch." René Descartes
"Mathematikern geht man am Besten aus dem Wege, sie machen überall Schwierigkeiten, welche nur sie allein zu beseitigen im Stande sind." Johann Wolfgang von Goethe
"Man überzeugt im Allgemeinen besser durch Gründe, die man selber gefunden hat, als durch die, die anderen eingefallen sind." Blaise Pascal
"Alles ist Zahl." Pythagoras
-
10.05.07 15:29 #4
Hallo
math.h ist eine C-Bibliothek und cmath eine C++, nein, das c bedeuted, das es das gleiche ist, aber halt nur umbenannt. Das c bedeuted, dass es eine C-Bibliothek ist.
Lg
Philipp9494Bei "Lösung" eines Problems, "Erledigt" markieren !
Nichtstun macht nur dann Spaß, wenn man eigentlich viel zu tun hätte.
Noel Coward
Was nützt uns die schönste künstlichste Intelligenz, wenn wir keine natürliche haben?
Programm: Fortunes
MyPi
-
10.05.07 16:13 #5
Mit anderen Worten, es ist egal, welches man nimmt?
"Alles, was bloß wahrscheinlich ist, ist wahrscheinlich falsch." René Descartes
"Mathematikern geht man am Besten aus dem Wege, sie machen überall Schwierigkeiten, welche nur sie allein zu beseitigen im Stande sind." Johann Wolfgang von Goethe
"Man überzeugt im Allgemeinen besser durch Gründe, die man selber gefunden hat, als durch die, die anderen eingefallen sind." Blaise Pascal
"Alles ist Zahl." Pythagoras
-
10.05.07 17:57 #6
Nein!!
"cout" geht nur mit C++, so win "cin"
in C glaub ich gibt es sprint oder so ähnlich..
Lg
Philipp9494Bei "Lösung" eines Problems, "Erledigt" markieren !
Nichtstun macht nur dann Spaß, wenn man eigentlich viel zu tun hätte.
Noel Coward
Was nützt uns die schönste künstlichste Intelligenz, wenn wir keine natürliche haben?
Programm: Fortunes
MyPi
-
10.05.07 19:16 #7
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Hi.
Nunmal nichts durcheinander würfeln.
"cmath" und "math.h" sind beides Headerdateien (keine Bibliotheken).
"math.h" ist eine Standard-Headerdatei der C Bibliothek.
"cmath" ist eine Standard-Headerdatei der C++ Standard Bibliothek.
In C++ sollten alle Standad-Headerdateien der C Bibliothek nicht direkt eingebunden werden, sondern durch die entsprechend angepasste C++ Header Datei. Die C Standard-Headerdateien werden in C++ ohne Endung und mit dem Präfix 'c' eingebunden. Also statt "stdio.h" nimmt man "cstdio", statt "stdlib.h" nimmt man "cstdlib" etc.
Der Grund ist das die Funktionen die durch die C Headerdateien bekannt gemacht werden z.B. im Namensraum std definiert werden (C kennt keine Namensräume). Außerdem unterstützt C++ das Überladen von Funktionen was bei C nicht möglich ist.
Daher kann man in C++ z.B. der Funktion "abs" unterschiedliche Typen von Argumenten übergeben. Während man in C gezwungen ist für unterschiedliche Datentypen Funktionen mit anderen Namen aufzurufen (also abs(double) bzw. fabs(float)).
GrußIf at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
11.05.07 12:38 #8
Soll heißen, es ist besser cmath zu nehmen als math.h?(Wenn ich in C++ schreibe)
"Alles, was bloß wahrscheinlich ist, ist wahrscheinlich falsch." René Descartes
"Mathematikern geht man am Besten aus dem Wege, sie machen überall Schwierigkeiten, welche nur sie allein zu beseitigen im Stande sind." Johann Wolfgang von Goethe
"Man überzeugt im Allgemeinen besser durch Gründe, die man selber gefunden hat, als durch die, die anderen eingefallen sind." Blaise Pascal
"Alles ist Zahl." Pythagoras
-
11.05.07 14:56 #9
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
If at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
12.05.07 14:40 #10
Dazu hätte ich auch mal eine Frage. Gibt es einen Unterschied zwischen einer Header-Datei(foobar.h) und einer C-Datei(foobar.c) ?
Leider kann mir dabei keine Suchmaschine/Hilfe helfen.
Bis jetzt habe ich in C++ Projekten immer eigene Header-Dateien includiert, nun lese ich aber das es unüblich ist zumindest bei Standardfiles.
Visit shadowmasta
-
12.05.07 15:11 #11
Hallo..
Jede Datei wo zum Schluss .h steht ist eine Headerdatei
.c ist eine C-Quellcodedatei (also dort stehen funktionen, etc.)
Lg
Philipp9494Bei "Lösung" eines Problems, "Erledigt" markieren !
Nichtstun macht nur dann Spaß, wenn man eigentlich viel zu tun hätte.
Noel Coward
Was nützt uns die schönste künstlichste Intelligenz, wenn wir keine natürliche haben?
Programm: Fortunes
MyPi
-
12.05.07 18:38 #12
Danke nun weiß ich immerhin das es für C ist.
Wenn es keine weiteren Unterschiede gibt was die verwendung angeht geb ich mich zufrieden
In einer Headerdatei stehen auch Funktionen und evtl globale Variablen usw.
mfgVisit shadowmasta
-
13.05.07 16:27 #13
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Hi.
Eine Headerdatei muß nicht unbedingt eine bestimmte Endung haben. Im Grunde kannst du deine eigenen Headerdateien bennennen wie du lustig bist (möglichst aber nicht genauso wie Standard-Headerdateien).
Es ist üblich Headerdateien die Endung .h zu geben. Auch wird häufig in C++ für Headerdateien die Endung .hpp (als Pendant zu .cpp) benutzt (z.B. von der boost Bibliothek).
In Headerdateien stehen üblicherweise Typdefinitionen, Funktionsdeklarationen bzw. Variablendeklarationen aber keine Definitionen von Variablen oder Funktionen (Ausnahme: inline-Funktionen).
GrußIf at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
13.05.07 20:01 #14
vielen Dank @deepthroat
Für Klassen benutze ich sie immer
Visit shadowmasta
Ähnliche Themen
-
Anfänger problem
Von itwasjustme im Forum PHPAntworten: 3Letzter Beitrag: 30.06.05, 23:35 -
Anfänger I/O-problem
Von zwob im Forum C/C++Antworten: 8Letzter Beitrag: 05.04.05, 08:49 -
anfänger problem mit if
Von Germanterminaotr im Forum PHPAntworten: 17Letzter Beitrag: 12.01.05, 09:51 -
Anfänger Problem
Von igfas im Forum C/C++Antworten: 5Letzter Beitrag: 07.09.03, 19:40 -
Anfänger Problem!
Von Dark Dämon im Forum Cinema 4DAntworten: 2Letzter Beitrag: 09.06.03, 10:22





Zitieren

Login






