Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » int Array

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
26.05.2004, 12:38 Uhr
chrisuni



Ich will eine Funktion, die die Werte eines int Arrays aufaddiert implementieren.
Dabei bin ich mir nicht sicher ob ich das mit dem int array überhaupt richtig gemacht habe.... jedenfalls krieg ich beim ausführen nen Fehler und mein Compiler zeigt nix an...

C++:
#include <iostream>
#include <conio.h>
#define max 20
using namespace std;

int addi(int a[max]);

main()
{
int a[max];

a[0] = 2;
a[1] = 5;


addi(a);
getch();
return 0;
}

int addi(int a[max])
{
  int i = 0, ergebnis = 0;

  
  for ( i=0; i<=a[max]; i++ ) {
    ergebnis += a[i];
  
  }
  cout << "\nErgebnis: " << ergebnis;
  return ergebnis;
  
}


--
gruß chris

nehmts mir net übel ich bin nen Anfänger und seh manchmal den Wald vor lauter Bäumen nicht mehr ;)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
26.05.2004, 12:51 Uhr
sven1978



Was willst du genau machen? In die restlichen felder das ergebniss von 2+ 5 schreiben? Drück dich mal genauer aus. Weil an deinem Quellcode kann mann nicht erkennnen was du machen willst.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
26.05.2004, 12:51 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



C++:
#include <iostream>
int addi(int *a,int n){
int rv=0;
for(int i=0;i<n;++i)rv+=a[i];
return rv;
}

int main(){
int a[]={1,2,3,4,5};
std::cout<<"Summe :"<<addi(a,5)<<std::endl;
}


--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
26.05.2004, 12:55 Uhr
sven1978



Achso das wolltest du machen.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
26.05.2004, 12:59 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


@sven1978
Nach deinem Beitrag bin ich mir auch nicht sicher ob er das wollte...
Der Quellcode sieht in der Tat ein wenig wild aus... hab mir den gar nicht richtig angeguckt und nur schnell oben seine beschreibung in code umgesetzt...obs wirklich das ist was er haben will werden wir ja noch sehen...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
26.05.2004, 13:00 Uhr
chrisuni



Danke Windalf genau das habe ich gesucht..
@sven tut mir leid wenn ich mich undeutlich ausgedrückt habe..

Dennoch bin ich noch net zufreiden ^^..

ich möchte nur ein Parameter in der Funktion addi haben, so wie in meinem Code oben... das fänd ich noch interessant zu wissen wenn es keine Umstände macht



P.S. inwiefern sieht mein Quellcoide wild aus, hab ich da schon einen großen Fehler reingebaut oder ist es sehr schlecht wie ich Programmiere ? Bitte seid ehrlich ^^
--
gruß chris

nehmts mir net übel ich bin nen Anfänger und seh manchmal den Wald vor lauter Bäumen nicht mehr ;)

Dieser Post wurde am 26.05.2004 um 13:01 Uhr von chrisuni editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
26.05.2004, 13:02 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


das mit einem parameter geht so ohne weiteres nicht... du musst irgendwie die information mit übergeben, wie gross dein array ist... du könntest das auch so machen das z.b. die erste null das array begrenzen soll, oder für diesen paramter einen defaultwertsetzen.. aber ganz ohne zusatzinformation geht das nicht. und so wie ichs dir gepostet hab ist es die "übliche weise" wie man das macht...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
26.05.2004, 13:03 Uhr
(un)wissender
Niveauwart


So ist es besser...


C++:
#include <iostream>
#include <numeric>

const int MAX = 20;

int addi(int a[], int m);

int main()
{
    int a[MAX];

    a[0] = 2;
    a[1] = 5;

    std::cout << "\nErgebnis: " << addi(a, 2) << std::endl;
    getchar();
    return 0;
}

int addi(int a[], int m)
{
  return std::accumulate(a, a + m, 0);
}


--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
26.05.2004, 13:05 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



Zitat:

So ist es besser...


also ich finds so ehrlich gesagt scheisse...
dein accumulate ist ja noch in ordnung, wobei wenn er anfängt die stl zu verwerden kann ers auch gleich datentyp unabhängig machen und in ein template giessen...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
26.05.2004, 13:07 Uhr
(un)wissender
Niveauwart


Warum soll das schlecht sein?
Bitte gib mir mal eine Begündung...
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: