Anfänger sucht Profis
-
DirkB schrieb:
In deiner Funktion rechnest du doch gar nicht mit angleA und angleB.
Ja das habe ich mir irgendwie auch schon gedacht. Hmm ich will nicht zu viel verlangen aber könnte es jemand korrigieren?
Danke im Voraus
-
Ich glaube ich habe es selber geschafft:
#include <stdio.h>
float remainingAngle(angleA, angleB)
{
float wert = 180.0 - angleA - angleB;
return wert;
}int main(int argc, const char * argv[])
{
float angleA = 30.0;
float angleB = 60.0;
float angleC = remainingAngle(angleA, angleB);
printf("The third angle is %.2f\n", angleC);return 0;
}
-
Sieht doch ganz vernünftig aus.
Du solltest noch Code-Tags benutzen, wenn du Programme hier in's Forum stellst (unter dem
-Smiley).
Du könntest noch den temporären Wert weglassen und gleich
return 180.0 - angleA - angleB;
schreiben. Optimiert der Compiler zwar sowieso, aber ist kürzer, ohne unübersichtlicher zu sein (Ich finde es sogar eher übersichtlicher).
-
Super, vielen Dank euch. Ein Erfolgserlebnis ist eine super motivation. Code Tags werde ich zukünftig nutzen.
-
Kleine Anmerkung:
float remainingAngle(angleA, angleB)
sollte
float remainingAngle(float angleA, float angleB)
sein, sonst sind angleA und angleB per Konvention Integer (also Ganzzahlen). Das kannst du schön sehen, wenn du unten mal
float angleA = 30.123; float angleB = 60.456;
hinschreibst und siehst, dass sich das Ergebnis nicht ändert.
-
Super, danke auch noch hier für.
-
Ich war mir jetzt nicht sicher und wollte keinen neuen Threat öffnen, deshalb noch mal hier. Sitze seit geraumer Zeit hier und komme nicht voran. Ich bin bei Funktionen für Gleitkommazahlen.
Aufgabe:
Verwenden Sie die math-Library! Fügen Sie Code in main.c ein, der den Sinus von 1 Radiant ausgibt. Runden Sie die Zahl auf drei Nachkommastellen. Sie sollte 0.841 lauten.Mein Code:
#include <stdio.h> #include <math.h> int main(int argc, const char * argv[]) { double g = 1.800 * 102, Pi = M_PI; //Zuweisung der Variablenwerte double s = sin((g / Pi)); //Berechnung printf("Sinus ist %.3f\n", s); //Ausgabe von Sinus return 0; }
Ich bekomme leider im Output "Sinus ist 0.949". Kann mir jemand sagen was ich falsch mache?
Vielen lieben Dank schon mal.
Grüße
-
sin erwartet das argument in rad, du braucht nichts umzurechnen
-
hab kurz zeit schrieb:
sin erwartet das argument in rad, du braucht nichts umzurechnen
Wärst du so nett es mir eben zu Tippen, ich steh total am Schlauch. Danke.
-
sin(1)
-
Boa vielen Dank!
-
Verschuetter schrieb:
double g = 1.800 * 102, Pi = M_PI;
M_PI ist kein C-Standard, d.h. er muss nicht in math.h vorhanden sein.
-
Wutz schrieb:
Verschuetter schrieb:
double g = 1.800 * 102, Pi = M_PI;
M_PI ist kein C-Standard, d.h. er muss nicht in math.h vorhanden sein.
Und wenn Du
M_PI
eh als Konstante nutzt, brauchst Du es auch nicht einer weiteren Variable (double Pi
) zuweisen.
-
Hi community, ich habe so meine probleme mit c unter linux
hier das problem:
[code="c"]
#include <stdio.h>
#include <string.h>int main()
{
char str_a[20];strcpy(str_a, "Hello, world!\n");
printf(str_a);return 0;
}
unter code::block wird mir ein fehler bei der printf anweisung angezeigt (build)
wenn ich nun ins terminal gehe(ubuntu) und dort die bahs-befehle eingebe
--->gcc char-array.c //Befehl
--->char_array.c:9:5: Warnung: Format ist kein Zeichenkettenliteral, und keine Formatargumente [-Wformat-security] //Fehler
was soll ich machen
THX für eure hilfe
-
Klappt doch prima.
-
Bei mir leider nicht
woran kann es liegen?
-
Du zeigst uns nicht den richtigen Code.
-
hmmm sry für die dumme frage, aber wie meinst du das?
das ist der code den ich unter der IDE CODE::Block geschrieben habe.Ps: Bezüglich des terminals ich wollte euch die fehlermeldung zeigen vll hilft sie euch weiter
-
newbieee schrieb:
hier das problem:
char str_a[20]; strcpy(str_a, "Hello, world!\n"); printf(str_a);
Wenn Du Dir den Prototypen von
printf()
anschaust wirst Du sehen, dass das erste Argument der format string ist.
Du könntest jetzt einen passenden format string verwenden, der Dein char[] ausgibt:
printf("%s", str_a);
Oder ausweichen, auf eine Funktion, die einenconst char*
ausgibt:
puts(str_a);
-
ich danke dir, jetzt funktioniert das programm !