Startseite
Forum
Fragen
Suchen
Formeleditor
Über Uns
Registrieren
Login
FAQ
Suchen
Foren-Übersicht
->
Elektrik
Antwort schreiben
Benutzername
(du bist
nicht
eingeloggt!)
Titel
Nachrichtentext
Smilies
Weitere Smilies ansehen
Schriftfarbe:
Standard
Dunkelrot
Rot
Orange
Braun
Gelb
Grün
Oliv
Cyan
Blau
Dunkelblau
Indigo
Violett
Weiß
Schwarz
Schriftgröße:
Schriftgröße
Winzig
Klein
Normal
Groß
Riesig
Tags schließen
Schreibt eure Formeln hier im Board am besten mit Latex!
So gehts:
Latex-Kurzbeschreibung
|
Formeleditor
[quote="jh8979"]rechnet pow() nicht ganz andere dinge aus, als du eigentlich willst? da bin ich mir nicht sicher...[/quote]
Optionen
HTML ist
aus
BBCode
ist
an
Smilies sind
an
BBCode in diesem Beitrag deaktivieren
Smilies in diesem Beitrag deaktivieren
Spamschutz
Text aus Bild eingeben
Alle Zeiten sind GMT + 1 Stunde
Gehe zu:
Forum auswählen
Themenbereiche
----------------
Mechanik
Elektrik
Quantenphysik
Astronomie
Wärmelehre
Optik
Sonstiges
FAQ
Sonstiges
----------------
Off-Topic
Ankündigungen
Thema-Überblick
Autor
Nachricht
MBastieK
Verfasst am: 06. Nov 2021 15:30
Titel:
schnudl hat Recht.
Sie müssen
fWert = pow(10, ((float)x)/12);
schreiben.
Es kommt immer 1.0 raus, weil potenziert mit 0 unendliche Wurzel bedeutet und "immer" zu 1 führt.
Und x/12 integer-weise immer 0 rauskommt bei x innerhalb [1,11], d.h. zwischen 1 und 11. Dementsprechend müsste immer 1.0 rauskommen ausser beim letzten, wo 10.0 rauskommt.
Zusatz: Oh, habe jetzt erst gesehen, dass Sie schon von selbst die 12 über 12.0F in ein float-Register gepackt haben bzw. eher so jetzt die float-Division nutzen.
schnudl
Verfasst am: 30. Okt 2021 08:34
Titel:
Eine Division zweier int resultiert nicht in float.
Was du jetzt noch hast, wissen wir nicht, du musst den Code zeigen.
jh8979
Verfasst am: 29. Okt 2021 23:13
Titel:
rechnet pow() nicht ganz andere dinge aus, als du eigentlich willst? da bin ich mir nicht sicher...
Widerstandberechner
Verfasst am: 29. Okt 2021 23:11
Titel:
Ok, einen hab ich auch gefunden:
12.0 statt 12
Den zweite finde ich nicht...
jh8979
Verfasst am: 29. Okt 2021 23:08
Titel:
Ich finde zwei, wenn ich verstehe, was Du machen willst. Ziemlich sicher, dass Du hier über einen was lernst:
http://userpage.fu-berlin.de/~ram/pub/pub_jf47ht81Ht/division_c
Widerstandsberechner
Verfasst am: 29. Okt 2021 22:58
Titel:
Finde da nur keinen Fehler...
jh8979
Verfasst am: 29. Okt 2021 22:51
Titel: Re: Programm ausgeben (C) - Widerstände (E12)
Widerstandsberechner hat Folgendes geschrieben:
fWert = pow(10, x/12);
Ich würde mal hier gucken...
Widerstandsberechner
Verfasst am: 29. Okt 2021 22:42
Titel: Programm ausgeben (C) - Widerstände (E12)
Meine Frage:
Hallo, ich will gerne die Widerstandsdekaden der E12-Reihe in C ausgeben. Diese sollen tabellarisch ausgegeben werden und mit einer Feldweite von 8 sowie einer Nachkommastelle.
Mein Code sieht folgendermaßen aus:
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int main(){
int x = 1;
int iNummer = 0;
float fWert;
for(x=1; x<=12; x++)
{
fWert = pow(10, x/12);
iNummer++;
printf("\n\tNr: %d\t Widerstand:\t %8.1f", iNummer, fWert);
}
}
Der Code wird auch ausgeführt, nur zeigt er bei jedem Widerstand den Wert 1.0 an. Wie komme ich darauf, dass er 1.2, 1.5,.... etc... ausgibt?
Wo liegt der Fehler? Was habe ich falsch gemacht?
Meine Ideen:
-