reinholdweihs
Mitglied
nun das problem mit dem minimum habe ich soweit im griff indem ich die erste zeile per boolscher variable auf true gesetzt habe , und mit dem zählen einfach bei der zweiten spalte beginne, aber sonst probleme über probleme.... auch der nächste schritt klappt nicht wo er dann in der zeile mit dem spaltenvektor weiter nach einem minimum suchen sollte und die indizes dann als array asugeben sollte hier einfach mal der fertige code wie das fertige programm laufen sollte
C++:
#include <iostream>
#include<cmath>
#include<vector>
#include<algorithm>
using namespace std;
int main()
{
double xPoint[6];
double yPoint[6];
for (int i = 0; i < 5; i++)
{
cout << "Enter the x coordinate for position" << i << ": ";
cin >> xPoint[i];
cout << "Enter the y coordinate for position" << i << ": ";
cin >> yPoint[i];
cout << string(50, '\n');
}
double myArray[5][5];
for (int k = 0; k < 5; k++)
{
for (int j = 0; j < 5; j++)
{
double X = sqrt(pow(xPoint[k] - xPoint[j], 2) + pow(yPoint[k] - yPoint[j], 2));
if (X==0)
{
X=100;
}
myArray[k][j] = X;
cout << X << " ";
}
cout << endl;
}
//Travelling salesmen
float min[6];
int spalte = 0;
bool zeile=true;
zeile= k==0;
for(int j = 1; j < 5; j++) {
double minimum =2;
if(minimum > myArray[0][j]) {
minimum = myArray[0][j];
spalte = j;
}
min[0] = minimum;
}
for (int j=0;j<1;j++)
{
cout << "Minimum der ersten Zeile :min[" << spalte <<"]" << endl;
cout << min[0] <<endl;
}
{
for (n=1;n<5;n++)
{
}
bool zwei=true;
zwei= k==spalte;
for(int j = 1; j < 5; j++) {
double minimum =2;
if(minimum > myArray[0][j]) {
minimum = myArray[0][j];
spalte = j;
}
min[2] = minimum;
}
for (int j=0;j<1;j++)
{
cout << "Minimum der ersten Zeile :min[" << spalte <<"]" << endl;
cout << min[2] <<endl;
}
}
}
Zuletzt bearbeitet von einem Moderator: