#include <iostream>
#include <fstream>
#include <iomanip>
#include <string>
using namespace std;
int main() {
const int CAPACITY = 10;
int frequencies[CAPACITY] = { 0 };
ifstream integerFile;
ofstream outegerFile;
integerFile.open("integerFile.txt");
if (!integerFile)
{
cout << "Error. Integer file cannot be opened." << endl;
cout << "The program is terminated.";
return 0;
}
int data;
int size = 0;
while (integerFile >> data)
{
if (data >= 0 && data <= 9) //범위를 만족하는 수만 읽기
{
size++;
frequencies[data]++;
}
}
integerFile.close();
string s = "\n";
cout << "There are" << size << "valid data items." << endl;
for (int i = 0; i < 10; i++)
{
s.append(to_string(i));
s.append(" ");
for (int f = 1; f <= frequencies[i]; f++)
{
s.append("*");
}
s.append(" ");
string t = to_string(frequencies[i]);
s.append(t);
s.append("\n");
}
outegerFile.open("outputIntegerFile.txt");
if (!outegerFile)
{
cout << "Error. Output file cannot be opened." << endl;
cout << "The program is terminated.";
return 0;
}
outegerFile << s;
outegerFile.close();
return 0;
}
초기 integerFile.txt
결과로 나온 outputIntegerFile.txt
학교 교재의 한 부분을 변형해서 콘솔창에 결과로만 출력하는 것이 아닌 txt 파일로 저장이 되도록 만들어 보았다.
'2023 1학기 > c++' 카테고리의 다른 글
[c++] virtual 함수가 필요한 이유 (0) | 2023.04.15 |
---|---|
[c++] string 함수들 (0) | 2023.04.14 |
[c++] Class Relationships : association, aggregation (0) | 2023.04.08 |
[c++] #ifndef #define #endif #pragma once (0) | 2023.03.26 |
[개정 열혈 c++] p.26 문제01-2 <함수 오버로딩> (0) | 2023.03.13 |