AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

c Builder Quersumme bilden

Ein Thema von PomBär · begonnen am 4. Mai 2004 · letzter Beitrag vom 4. Mai 2004
Antwort Antwort
PomBär

Registriert seit: 28. Sep 2003
Ort: MV
57 Beiträge
 
Delphi 6 Professional
 
#1

c Builder Quersumme bilden

  Alt 4. Mai 2004, 13:37
moin leute
ich möchte für ein programm die quersumme bilden leider weis ich net wie das geht. ich hab mich schon mal umgeschaut und

int array[10000];
for(int i=0;i < 10000; i++)
array[i] = quersum(i);

das gefunden.

sollte der code richtig sein kann ihn mir bitte jemand erklären? wenn ich es compiliere sagt er das die funktion quersum nicht existiert.
wenn i durch die funktion berechnet wurde wie kann man dann eine ausgabe von i erreichen?

danke für euer bemühen

Je weniger einer weiß, desto eher glaubt er jeden Scheiß.
  Mit Zitat antworten Zitat
Skiron

Registriert seit: 14. Dez 2003
153 Beiträge
 
#2

Re: c Builder Quersumme bilden

  Alt 4. Mai 2004, 14:12
meinst du Quersumme oder summe?
um die Quersumme zu erhalten könnte folgendes Funktionieren (habs nicht durchgetestet):
Code:
int quersumme(int von)
{
  int res = 0;
  while (von)
  {
    res+=von%10;
    von=(int)von/10;
  }
  return res;
}
Mann zu Frau:
Zieh dich aus, wir müssen reden!
  Mit Zitat antworten Zitat
Benutzerbild von fred.reichbier
fred.reichbier

Registriert seit: 27. Apr 2004
154 Beiträge
 
#3

Re: c Builder Quersumme bilden

  Alt 4. Mai 2004, 14:18
Ich kapier den Code auch nicht,
aber in Delphi würde ich das so machen:
Delphi-Quellcode:
function QuerSumme (Zahl: Integer);
var p: String; r,i: Integer;
begin
p := Inttostr(Zahl);
r := 0;
for i := 1 to length(p) do
begin
r := r + Strtoint(Copy(p,i,1));
end;
result := r;
end;
Ich glaube in C++ geht das so:
Code:
int i,Zahl,Quersummenzahl;
Zahl=0;
for(i=1; i<length(QuerSummenZahl); i++)
  Zahl = Zahl + StrToInt(Copy(IntToStr(QuerSummenZahl),i,1));
QuerSummenZahl muss dann die Zahl zugewiesen kriegen,
aus der die QuerSumme errechnet werden soll.
Zahl ist dann die Quersumme.
Falls etwas nicht klappt: Versuche mal length groß zu schreiben oder
andere Befehle kein bzw. groß zu schreiben,
mfg
fred
Friedrich Weber
  Mit Zitat antworten Zitat
Skiron

Registriert seit: 14. Dez 2003
153 Beiträge
 
#4

Re: c Builder Quersumme bilden

  Alt 4. Mai 2004, 14:44
soweit ich weiß, gibts IntToStr und StrToInt in C nicht!
zudem:
statt copy strcpy() und
statt length strlen()
Mann zu Frau:
Zieh dich aus, wir müssen reden!
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#5

Re: c Builder Quersumme bilden

  Alt 4. Mai 2004, 15:02
Moin!

Zitat von Skiron:
soweit ich weiß, gibts IntToStr und StrToInt in C nicht!
Naja, atoi() und sprintf().

Ansonsten Ausnahme: Der C++Builder hat die SysUtils direkt von Delphi und somit auch StrToInt() und IntToStr(), da er Delphi Source lesen und übersetzen kann.

Ausserdem ist an dem Source so oder so noch was falsch, weil er bei length(Quersumme) eigentlich length(IntToStr(Quersumme)) hätte schreiben müssen...

MfG
Muetze1
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#6

Re: c Builder Quersumme bilden

  Alt 4. Mai 2004, 15:38
Zitat von Muetze1:
Ansonsten Ausnahme: Der C++Builder hat die SysUtils direkt von Delphi und somit auch StrToInt() und IntToStr(), da er Delphi Source lesen und übersetzen kann.
Also ich würde das nicht machen, da einer der Hauptvorteile von C sein sollte, dass der Code portierbar ist. Deshalb sollte man immer atoi() und sprintf() verwenden.
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#7

Re: c Builder Quersumme bilden

  Alt 4. Mai 2004, 15:54
Moin!

Zitat von alcaeus:
Zitat von Muetze1:
Ansonsten Ausnahme: Der C++Builder hat die SysUtils direkt von Delphi und somit auch StrToInt() und IntToStr(), da er Delphi Source lesen und übersetzen kann.
Also ich würde das nicht machen, da einer der Hauptvorteile von C sein sollte, dass der Code portierbar ist. Deshalb sollte man immer atoi() und sprintf() verwenden.
Er benutzt nun schon den C++Builder. Und auch wenn, dann dürfte er u.a. auch nicht die VCL benutzen, sondern müsste z.B. MFC im BCB benutzen, um dann wenigstens zu MSVC kompatiblen Code zu schreiben - oder gleich alles mit qt...

Wenn man es hat, sollte man es nutzen, vor allem wenn man weiss, in wie weit das Projekt auch mal anders erstellt wird, etc.

MfG
Muetze1
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:05 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz