C++ nybörjare funktioner och vektorer
Hej, håller på med en Uppgift och beskrivningen är:
skapa en funktion i c++ med följande huvud
float medel (int v[], int n)
Funktionen ska alltså ta en heltalsvektor som inparameter och returnera medelvärdet av talen i vektorn. Parametern n anger antalet element i vektorn.
Skriv också ett huvudprogram (main) i vilket du deklarerar en hetalsvektor med 10 element. Programmet ska anropa funktionen medel och skriva ut medelvärdet av talen i vektorn. Välj själv om vektorn tilldelas värden av programmet självt eller om värdena matas in av användaren när programmet körs.
Tips använd typomvandling.
Jag har kommit en ganska bra bit på vägen med programmet känns det som. Vilket är följande.
#include <iostream>
#include <clocale>
float medel(int v[], int n)
{
float summa = 0.0; //Här nollställer man summan så att vi börjar additionen från noll
float medel;
for (int i = 0; i <n; i++)
{
summa = summa + n;
}
medel = summa / n;
return (float)medel; // för att inte returnera medel som en int sätter man (float)/(double) framför för en typomvandling
}
int main()
{
setlocale(LC_ALL, "swedish");
int n[10], summa = 0;
for (int i = 0; i <=10; i++)
{
std::cout << "Skriv in tio tal: ";
std::cin >> n[i];
}
medel(n, 10); //Här kallar jag på min funktion
std::cout << "Medelvärdet blir : " << summa/10;
std::cin.ignore();
std::cin.get();
return 0;
}
Dock blir det ju inte riktigt som tänkt så något fel gör jag men kan inte riktigt hitta det, jag kan ju även skriva tal 11 gånger istället för 10 som jag trodde att man bara skulle kunna. Sedan räknar den inte ut medelvärdet heller den säger att det blir 0 bara.
Ifall någon vill hjälpa på något sätt så uppskattas det väldigt mycket.