So erhielten wir ein Projekt mit zwei Arrays (eine eine Zeichenfolge und die andere einschließlich Werte), und ich entschied mich, Filme und Jahre zu verwenden. Einer der Parameter des Projekts besteht darin, die Maximal- und Minimalwerte zusammen mit ihrer Zeichenfolge anzuzeigen. Nun, das Max funktioniert gut, aber wenn ich versuche, min auszuführen, heißt es, dass es nicht initialisiert ist. Was mache ich falsch?Probleme mit der Indexierung Mindestwert von Array mit einer Funktion
#include <iostream>
#include <string>
using namespace std;
int avgYear(int arr[], int size);
int indexMin(int arr[], int size);
int indexMax(int arr[], int size);
int main()
{
int total = 0;
string name[] = {"Toy Story", "A Bug's Life", "Toy Story 2", "Monster's Inc.", "Finding Nemo", "The Incredibles", "Cars", "Ratatouille", "WALL-E", "Up"};
int year[] = { 1995, 1998, 1999, 2001, 2003, 2004, 2006, 2007, 2008, 2009};
for (int x = 0; x < 10; x++)
cout << name[x] << " " << year[x] << endl;
cout << "The average year of release was " << avgYear(year, 10) << endl;
cout << "The First Year of Release was " << name[indexMin(year, 10)] << " in " << year[indexMin(year, 10)] << endl;
cout << "The Last Year of Release was "<< name[indexMax(year, 10)] << " in " << year[indexMax(year, 10)] << endl;
return 0;
}
int avgYear(int arr[], int size)
{
int avg;
int total=0;
for (int x = 0; x < size; x++)
total += arr[x];
avg = total/size;
return avg;
}
int indexMin(int arr[], int size)
{
int iMin;
int min = arr[0];
for (int x = 1; x < size; x++)
if (arr[x] < min)
{
min = arr[0];
iMin = x;
}
return iMin;
}
int indexMax(int arr[], int size)
{
int iMax;
int max = arr[0];
for (int x = 0; x < size; x++)
if (arr[x] > max)
{
max = arr[x];
iMax = x;
}
return iMax;
}
Oh danke, ich schätze wirklich. Ich habe stundenlang auf dieses Projekt geschaut. Danke auch für die Erklärung, warum, es war wirklich hilfreich! – Rebeckah