Kodumda bir sorunum var, kod çalışıyor ama tüm numaralar her yerdedir.Kod çalışır, ancak her şey düzgün değil
RainfallToDate.txt:
0.01
1.74
0.19
0.65
0.50
0.10
0.00
0.02
0.01
0.06
1.57
7.76
averageRainfall.txt: Burada
2.99
3.32
2.04
1.06
0.39
0.09
0.00
0.00
0.23
0.78
1.88
2.12
kod şudur: benim problem olan bildiğim
#include <iostream> // for cout
#include <fstream> // for file I/O
#include <cstdlib> // for exit()
using namespace std;
int main()
{
ifstream fin;
ofstream fout;
ifstream fin_rainFall("rainfallToDate.txt");
ifstream fin_average("averageRainfall.txt");
if (fin.fail())
{
cout << "Input file failed to open.\n";
exit(-1);
}
fout.open("rainfall.txt");
if (fout.fail())
{
cout << "Output file failed to open.\n";
exit(-1);
}
fout << "Rainfall for Cupertino: A Comparison\n" << endl;
fout << "Month\tAverage\t 2015\tDeficit\n" << endl;
for (int i = 1 ; i <= 12 ;i++) { // counts the month from 1-12
char num[256];
char num2[256];
fout<< i << "\t";
fin_average.getline(num,256);
fout<<num << "\t";
fin_rainFall.getline(num2,220);
fout<<num2<< "\t";
double a;
double b;
while (fin_average >> a && fin_rainFall >> b){
fout <<"\t" << (a-b) << endl;
}
}
fin.close();
fout.close();
return 0;
}
ve altındadır
double a;
double b;
while (fin_average >> a && fin_rainFall >> b){
fout <<"\t" << (a-b) << endl;
}
Bu kod satırını kaldırdığımda kod mükemmel bir şekilde çalışır, ancak bu çizgiye ihtiyacım var, böylece ortalamaları yağış miktarına indirebilirim. İşte aldığım şeyin bir resmi.
alıyorum neResim - Ben gerekiyor ne
Resim - Geçtiğimiz saatlerce bu düzeltmek için nasıl anlamaya çalışırken üzerinde çalışıyoruz
ve Neyin yanlış olduğunu henüz anlamadım.
Daha fazla bilgi: Hemen hemen maliyetin, iki ayrı "metin dosyasından" temel olarak bunları bir araya getirerek, yağışlar.txt adlı üçüncü bir metin dosyasına birleştirilmesi gerekiyordu ve orada bir tane diğerini çıkarmak için açık.
O çok daha yararlı burada düz metin olarak çıkışı olacaktır. – tadman
Neden sabit boyutlu bir 'char' arabelleği yerine std :: string' kullanılmıyor? C++, taşma hatalarına maruz kalmanın üstesinden gelmenizi şiddetle tavsiye eder. – tadman
Neler olup bittiğini görmek için "\ t" yi kaldırmayı mı yoksa kod deyiminizi mi aşmayı denediniz? –