skapa en int-vektor med fem element.

Permalänk

skapa en int-vektor med fem element.

Hej,

Uppgift!
Jag skall skapa en int-vektor med fem element. Användaren får mata in fem värden via en for loop.
Programmet skriver sedan ut dessa namn via en annan for loop.

För det första, är uppgiften lite konstigt formulerad? Först skall man mata in värden och sedan skriver den ut namn? En int kan väl inte skriva ut namn eller?

Sedan har jag koll på hur man skapar en vektor fast ger dem värden direkt. Hur skulle jag kunna ge dem värden i loopen?

exemplet nedan har jag gjort tidigare. det är två olika varianter, bara ett jag kommenterat ut det ena för att testa det andra.

int temperatur[5]; //= {17, -65, -20, 9, 42};

//tilldela vektorns element olika värden
temperatur[0] = 17;
temperatur[1] = -65;
temperatur[2] = -20;
temperatur[3] = 9;
temperatur[4] = 42;

Någon som känner sig manad att förklara för en förvirrad?

Permalänk
Medlem

Är uppgiften formulerad exakt så som du skrev? Koden du har lagt upp är en array och inte en vector förresten.
Vill du mata in data i en array från en for-loop kan du deklarera den i förväg och sedan i for-loopen läsa in data och lägga in i rätt plats på arrayen.

int arr[5]; for(int i = 0; i < 5; i++) { int input = läs in användardata; arr[i] = input; }

Permalänk

@eggplant: Hej,

uppgiften är formulerad så och det är det jag tycker är konstigt.
Sedan är exemplet taget från boken med och dem skriver att det är en vektor så jag vet inte?

Jag har upptäckt att det är en hel del stavfel och fel över huvudtaget i boken så om vi antar att dem menar att programmet skriver ut dessa värden istället för namn så kanske det blir enklare?

Här kommer resten. allt funkar som det skall men nu skall jag ge värdena i loopen

int sum = 0;
for (int i = 0; i < 5; i++)
{
sum = sum + temperatur[i];
}

cout << "medeltemperaturen är " << sum / 5 << endl;

Permalänk
Medlem

@apan82ful: Det verkar som om att det ska stå värden istället för namn i boken. Är detta en skoluppgift du har eller något du gör på egen hand?

Inne i for-loopen skulle du kunna använda t.ex "cin" för att läsa in data från användaren genom konsollen.

int nummer; cout << "Skriv ett nummer: "; cin >> nummer; cout << endl << "Du skrev: " << nummer;

Permalänk
Medlem
Skrivet av eggplant:

Är uppgiften formulerad exakt så som du skrev? Koden du har lagt upp är en array och inte en vector förresten.
Vill du mata in data i en array från en for-loop kan du deklarera den i förväg och sedan i for-loopen läsa in data och lägga in i rätt plats på arrayen.

int arr[5]; for(int i = 0; i < 5; i++) { int input = läs in användardata; arr[i] = input; }

Han skrev dock vektor vilket svenska för array. Sen att C++ skiljer på vector/array är en annan sak

Visa signatur

CPU: Ryzen 5600xGPU: 1080 TI ROG Strix RAM:2x16GB G.skill Trident @ 3600MHz MoBo: Asus B550FPSU: Corsair SF750
En resa till Nordkorea
2 dagar i Tjernobyl

Permalänk

@eggplant: Hej,

Det är en skoluppgift. Det är ju upp till mig at klara av det men man kan ju undra över valet av kurslitteratur. Boken verkar inte vara helt tillförlitlig och så kör jag distans med så det är ganska rörigt utan lärare, men man får kötta sig igenom 10-12 timmar om dagen!

Tack för tipsen, nu har lite att gå på!

Permalänk
Medlem

@Pelegrino: Nja, vektor är väl mer inom matematik. I programmering på svenska brukar de kallas för fält eller helt enkelt array.

Permalänk
Medlem
Skrivet av eggplant:

@Pelegrino: Nja, vektor är väl mer inom matematik. I programmering på svenska brukar de kallas för fält eller helt enkelt array.

En vektor är en 1-dimensionell array, på samma sätt som en matris är 2-dimensionell. Den terminologin kommer som du säger från matematiken, men används mycket inom programmering också. Så det är inte fel att säga vektor i detta fall, även om det lätt kan bli lite förvirrat eftersom C++ har std::vector (fast nu finns ju även std::array för att göra förvirringen total).

Permalänk
Hedersmedlem

http://stackoverflow.com/questions/6632971/what-is-the-differ...

Där finns en rätt utförlig förklaring. Nu bör ämnet kunna gå vidare om TS behöver mer hjälp.

Permalänk
Medlem

Lite off topic men när jag pluggade C++ lärde jag mig mycket från http://www.learncpp.com/

Betydligt tydligare och mer pedagogisk än någon kurslitteratur jag har sett