-5
所以我正在做另一项任务,我需要你的帮助。我制作了这个程序,该程序应该能够找到一种颜色并用该颜色坐标和颜色输出一个点。当我输入诸如“raudona”(红色)之类的东西时,它会输出所有内容,但我会得到随机数字。当我输入“geltona”(黄色)时,它只输出随机数。当我输出字符串时,我得到随机数字
下面的代码:(http://pastebin.com/YtN1vkFk - 与Uncrustify自动缩进)
#include <iostream>
#include <fstream>
#include <string>
#include <iomanip>
using namespace std;
const int CMax = 100;
struct taskai
{
int x;
int y;
string spalva;
};
struct atrinkti
{
int x;
int y;
string spalva;
};
// --------------------------------
void duomenys(taskai T[], int &n);
void isvedimas(taskai T[], atrinkti A[], int n, string ispal, int maxr);
void spalva(taskai T[], int n);
void atrinkimas(taskai T[], atrinkti A[], int n, string ispal, int &maxr);
// --------------------------------
int main()
{
setlocale(LC_ALL, "Lithuanian");
string ispal;
int n, maxr = 0;
atrinkti A[CMax];
taskai T[CMax];
duomenys(T, n);
cout << "Iveskite spalva:" << endl;
cin >> ispal;
atrinkimas(T, A, n, ispal, maxr);
isvedimas(T, A, n, ispal, maxr);
return 0;
}
void duomenys(taskai T[], int &n)
{
ifstream duom("Duomenys.txt");
duom >> n;
for (int i = 0; i < n; i++)
{
duom >> T[i].spalva;
duom >> T[i].x >> T[i].y;
}
}
void isvedimas(taskai T[], atrinkti A[], int n, string ispal, int maxr)
{
ofstream ras("Rezultatai.txt");
ras << "Pradiniai duomenys: " << endl;
ras << endl;
ras << setfill('-') << setw(40) << "-" << endl;
ras << setfill(' ');
ras << "Spalva" << setw(30) << "Koordinatės" << endl;
ras << endl;
ras << setfill('-') << setw(40) << "-" << endl;
ras << setfill(' ');
for (int i = 0; i < n; i++)
{
ras << setw(5) << T[i].spalva << setw(20) << T[i].x << setw(4) << T[i].y << endl;
}
ras << setfill('-') << setw(40) << "-" << endl;
ras << setfill(' ');
ras << endl;
ras << setfill('_') << setw(40) << "_" << endl;
ras << setfill(' ');
ras << endl;
ras << "Taškai, turintys spalvą " << ispal << " yra: " << endl;
ras << endl;
ras << "Koordinatės" << setw(15) << "Spalva" << endl;
ras << setfill('_') << setw(40) << "_" << endl;
ras << setfill(' ');
for (int i = 0; i <= maxr; i++)
{
ras << setw(3) << A[i].x << setw(4) << A[i].y << setw(20) << A[i].spalva << endl;
}
}
void atrinkimas(taskai T[], atrinkti A[], int n, string ispal, int &maxr)
{
for (int i = 0; i < n; i++)
{
if (ispal == T[i].spalva)
{
A[i].x = T[i].x;
A[i].y = T[i].y;
A[i].spalva = T[i].spalva;
maxr++;
}
}
}
而这里的输入文件:(http://pastebin.com/3zvZgT8k)
5
raudona -5 1
juoda 1 1
raudona -4 3
geltona 5 5
geltona 6 6
第一个号码是n,则有颜色和坐标。
请在此处显示完整的简短代码示例。 – Simon
最好在这里内嵌代码。如果pastebin永远无法使用,那么如果只是暂时的,您的问题就变得无法使用。此外,请首先阅读indendation,并让您的代码可读。 –
我知道这有点乱,但我现在做不了多少.. – EJay