Gå til innhold

CPP array (newbie)


Anbefalte innlegg

Hei, regner med å bli halshugd og ledd av, men har et problem med en c++-oppgave her..

#include <iostream>
#include <conio.h>
#include "consul.h"
using namespace std;
const int ANTALL = 100; 
int main()
{
 int tallsett[ANTALL]; 
 int antall;
 double total;
 double strykgrense;

 cout << "Skriv inn strykgrensen i karaktersystemet ditt!" << endl;
 cin >> strykgrense;
 cout << "Strykgrensen er satt til " << strykgrense << endl; 
 cout << norsk("Hvor mange karakterer skal brukes? ") << endl;
 cin >> antall;
//---------------------------------------------------------------------------  
 for ( int i = 0;i < antall; i++)
 {
   system ("cls");
   cout << "Tast inn karakter nr. " << i+1 << "--> ";
   cin >> tallsett[i];
 }
 system ("cls");
 cout << "Stod du montro?!  \n";
 for ( int i = 0;i < antall; i++)
 {
    cout << "Dette er karakter nr. " << (i+1) << "--> " << tallsett[i] << endl;
 }    
//---------------------------------------------------------------------------
 total = tallsett[1] / antall;

 cout << "Totalresultatet blir " << total << endl;

 if (total < strykgrense) {
 cout << "Stryk!" << endl;
 }
 else {
 cout << "Du stod!" << endl;
 }
 system ("PAUSE");
 return 0;
}   

 

Som dere (kanskje) ser er det et program for å beregne karakterer, om man stod. Problemet ligger her:

 

total = tallsett[1] / antall;

 

Jeg finner ikke ut hvordan jeg bruker totalinnholdet fra tallsettet (karakterne som blir lagt inn i arrayet).. noen kjappe tips?

 

god fredag!

 

Kristian

Lenke til kommentar
Videoannonse
Annonse

kjappt lite tips. så vidt jeg vet er det ingen måte å få totalen ut fra ett int array, da arrayen i seg selv ikke er ett objekt med metoder osv. og kan brukes på alle variable og objekter. For å få ut totalen av ett array må du traversere alle verdienen i arrayet (Hint: for-løkke og array.size) og legge disse i en variabel total. Håper dette hjalp. Spør hvis det er noe du lurer på.

 

EDIT: Du vil nok aldri bli halshugd og ledd av her, alle har vært i startfasen en gang, og de fleste husker hvordan det var;)

Endret av NevroMance
Lenke til kommentar

array.size finnes ikke i c/c++, men du kan bare bruke ANTALL.

 

Ellers er jeg helt enig i at vi ikke ler eller hugger hode av deg (NevroMance).

Her hogger vi bare hodet av folk som vil ha hjelp til å lage alt av kode til programmer (uten selv kunne programmer)

Endret av Giddion
Lenke til kommentar

Hei! Ingen grunn til å bli ledd av dette. :) Alle har vært der du er nå en gang.

 

Du er ute etter å få alle karakterelementene(arrayet) lagt sammen i en enkelt variabel kalt total ?

 

Da kan du bruke en for loop for å gå igjennom arrayet, og for hver runde adderer(+=) du elementet over til total variabelen. Så kan du bruke en ny variabel for å lagre gjennomsnittet i. total / antall.

 

Og hvis dette skal gå smertefritt burde du bruke double array istedet for et int array siden du skal ha elementene over i en double variabel.

 

Sifra hvis du ikke får det til så skal jeg gi flere hint :) Lykke til.

Lenke til kommentar

du må summere alle karakterene i array'en med samme teknikk som du leste inn karakterene og skrev de ut til skjermen etterpå. Du kan gjerne gjøre summeringen i samme løkke som for eksempel utskriften! Men her er ihvertfall ett eksempel på en individuell løkke for summering av alle karakterene.

 

 

int sumKarakterer = 0;

for(int i = 0; i < antall; i++){

sumKarakterer += tallsett;

}

 

total = sumKarakterer / antall;

 

 

edit: du kom meg i forkjøpet mondain...

Endret av Mapster
Lenke til kommentar
du må summere alle karakterene i array'en med samme teknikk som du leste inn karakterene og skrev de ut til skjermen etterpå. Du kan gjerne gjøre summeringen i samme løkke som for eksempel utskriften! Men her er ihvertfall ett eksempel på en individuell løkke for summering av alle karakterene.

 

 

int sumKarakterer = 0;

for(int i = 0; i < antall; i++){

sumKarakterer += tallsett;

}

 

total = sumKarakterer / antall;

 

 

edit: du kom meg i forkjøpet mondain...

 

  double sum = 0.0;
 for ( int i = 0;i <antall; i++)
 {
     sum = sum + tallsett[i];
 }

 

Kaching!

 

Supert karer, mange takk!

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...