www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "C/C++" - Partialsumme eines Arrays
Partialsumme eines Arrays < C/C++ < Programmiersprachen < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "C/C++"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Partialsumme eines Arrays: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 19:57 Di 05.01.2010
Autor: az118

Aufgabe
Schreiben Sie eine C-Funktion zur Berechnung der Partialsummen eines Arrays,
d.h., die Funktion soll in jeden Eintrag des Arrays die Summe aller Zahlen bis zu dieser Stelle abspeichern.

Beispiel: Die Funktion soll das Array (4; 2; 17; 11; 3) mit den Werten (4; 6; 23; 34; 37) füllen.

b) Erweitern Sie die Funktion, so dass für gegebene a, b die Summe der Einträge von Stelle a bis Stelle b berechnet und zurückgegeben wird. Verwenden Sie für diese Funktionalität die Partialsummen aus der vorherigen Aufgabe.

Beispiel: Wenn a = 1 und b = 3 ist, soll zu obigem Array die Zahl 2 + 17 + 11 = 30 zurückgegeben werden. Beachten Sie, dass sich dieses Ergebnis auch aus der Partialsummendi erenz von b und a-1 ableiten lässt, d.h., 34-4 = 30.

Hallo,habe noch eine Aufgabe mit der ich Probleme habe?
Ich versuche mich erstmal an Aufgabe a.
Meine Idee war (so im Ansatz)

#include <stdio.h>

int part(int array[],int laenge){
int i;

for(i=0;i<laenge;i++){
array[i]=array[i]+array[i+1];
}
    return array[i];
}

int main(){
int array[18]={4,2,17,11,3};

printf("Die Partialsumme lautet: %i",part(array,18));

[mm] while(getchar()!='\n'); [/mm]

}

        
Bezug
Partialsumme eines Arrays: Antwort
Status: (Antwort) fertig Status 
Datum: 20:06 Di 05.01.2010
Autor: fencheltee

Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)

> Schreiben Sie eine C-Funktion zur Berechnung der
> Partialsummen eines Arrays,
>  d.h., die Funktion soll in jeden Eintrag des Arrays die
> Summe aller Zahlen bis zu dieser Stelle abspeichern.
>  
> Beispiel: Die Funktion soll das Array (4; 2; 17; 11; 3) mit
> den Werten (4; 6; 23; 34; 37) füllen.
>  
> b) Erweitern Sie die Funktion, so dass für gegebene a, b
> die Summe der Einträge von Stelle a bis Stelle b berechnet
> und zurückgegeben wird. Verwenden Sie für diese
> Funktionalität die Partialsummen aus der vorherigen
> Aufgabe.
>  
> Beispiel: Wenn a = 1 und b = 3 ist, soll zu obigem Array
> die Zahl 2 + 17 + 11 = 30 zurückgegeben werden. Beachten
> Sie, dass sich dieses Ergebnis auch aus der
> Partialsummendierenz von b und a-1 ableiten lässt, d.h.,
> 34-4 = 30.
>  Hallo,habe noch eine Aufgabe mit der ich Probleme habe?
>  Ich versuche mich erstmal an Aufgabe a.
>  Meine Idee war (so im Ansatz)
>  
> #include <stdio.h>
>  
> int part(int array[],int laenge){
>   int i;
>  
> for(i=0;i<laenge;i++){
>   array=array+array[i+1];
> }
>      return array;
> }
>
> int main(){
> int array[18]={4,2,17,11,3};
>
> printf("Die Partialsumme lautet: %i",part(array,18));
>
> [mm] while(getchar()!='\n');[/mm]Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)


>
> }

du hast unten als übergabe wert die 18, gibts aber nur 5 werte weiter.. ist wohl vom testen noch als fehler dringeblieben

ansonsten korrigiert:

#include <stdio.h>

int part(int array[],int laenge){
int i;

for(i=1;i<laenge;i++){
bei 1 anfangen, da das erste element unverändert bleibt
array[i]=array[i]+array[i-1];
hier wird beim 2. element das 1. hinzuaddiert usw.
}
    return array[laenge-1];
rückgabe des letzten elements
}

int main(){
int array[5]={4,2,17,11,3};

printf("Die Partialsumme lautet: %i",part(array,5));
getch();
}

gruß tee

Bezug
                
Bezug
Partialsumme eines Arrays: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 20:22 Di 05.01.2010
Autor: az118

Wie kann ich in aufgabe b das array an der stelle a oder b bestimmen?
einfach array[a] ??

Bezug
                        
Bezug
Partialsumme eines Arrays: Antwort
Status: (Antwort) fertig Status 
Datum: 20:34 Di 05.01.2010
Autor: fencheltee


> Wie kann ich in aufgabe b das array an der stelle a oder b
> bestimmen?
>  einfach array[a] ??

da im teil a eigentlich kein returnwert gefordert war, würde ich die funktion part erweitern, dass du sie mit part(array,anzahl elemente,start,ende) aufrufst, wobei start dein a-wert und ende dein b-wert sein soll...
als returnwert machst du dann die in der aufgabe besprochene differenz

gruß tee

Bezug
                                
Bezug
Partialsumme eines Arrays: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 20:52 Di 05.01.2010
Autor: az118

Ok,habe es jetzt so gemacht:

#include <stdio.h>

int part(int array[],int laenge,int start,int ende){
    int i;
int a=1;
int b=3;

    for(i=1;i<laenge;i++){
    array[i]=array[i]+array[i-1];

}
    return array[ende]-array[start-1];

}

int main(){
    int array[5]={4,2,17,11,3};

    printf("Die Partialsumme lautet: %i",part(array,5,1,3));

while(getchar()!=' \ n ');


}

Bezug
                                        
Bezug
Partialsumme eines Arrays: Antwort
Status: (Antwort) fertig Status 
Datum: 20:57 Di 05.01.2010
Autor: fencheltee


> Ok,habe es jetzt so gemacht:
>  
> #include <stdio.h>
>  
> int part(int array[],int laenge,int start,int ende){
>      int i;
>   int a=1;
>   int b=3;

a und b haben in der funktion selbst nix mehr zu suchen

>  
> for(i=1;i<laenge;i++){
>      array=array+array[i-1];
>
> }
>      return array[ende]-array[start-1];
>
> }
>
> int main(){
>      int array[5]={4,2,17,11,3};
>
> printf("Die Partialsumme lautet: %i",part(array,5,1,3));

1 steht ja symbolisch für a, und 3 für b

>
> while(getchar()!=' \ n ');
>
>
> }  

ansonsten schauts gut aus

gruß tee

Bezug
                                                
Bezug
Partialsumme eines Arrays: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 21:02 Di 05.01.2010
Autor: az118

Achso,ok.
Danke für die ganze Hilfe

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "C/C++"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]