í•™ì �계산프로그램/허아ì˜� ¶
솔ì§�히 ë¶€ë�„럽습니다. Cë�„ 모르는ë�°, C++로 ì�´ë ‡ê²Œ ì–´ë ¤ìš´ 것ì�„-_-
ì •ë§� 힘들게 풀었습니다. ë¬¼ë¡ ë‹µì�´ 맞는지ë�„ ëª¨ë¥´ê² êµ¬ìš”.
OOP� 잘 모르는�,, -.-
ì œ 소스가 C++ì�˜ 특징ì�¸ OOP를 사용하지 않ì�€ ê»�ë�°ê¸° 소스ë�¼ê³ ë³´ì°½ì˜¤ë¹ ëŠ” ë§�하ë�”êµ°ìš” ã… ã… ( ìƒ�처ㅡㅡ++++++ )
여튼 했으니 올립니다 !
// 파ì�¼ì¶œë ¥í•˜ë ¤ë‹¤ê°€, í‘œì¤€ì¶œë ¥ 했습니다.
ì •ë§� 힘들게 풀었습니다. ë¬¼ë¡ ë‹µì�´ 맞는지ë�„ ëª¨ë¥´ê² êµ¬ìš”.
OOP� 잘 모르는�,, -.-
ì œ 소스가 C++ì�˜ 특징ì�¸ OOP를 사용하지 않ì�€ ê»�ë�°ê¸° 소스ë�¼ê³ ë³´ì°½ì˜¤ë¹ ëŠ” ë§�하ë�”êµ°ìš” ã… ã… ( ìƒ�처ㅡㅡ++++++ )
여튼 했으니 올립니다 !
// 파ì�¼ì¶œë ¥í•˜ë ¤ë‹¤ê°€, í‘œì¤€ì¶œë ¥ 했습니다.
소스 ¶
calculate.h ¶
~cpp
#include <fstream>
#include "const.h"
#include "student.h"
class Calculate
{
private:
Student a;
public:
void input();//파ì�¼ìž…ë ¥, í•™ì �으로 ì „í™˜
void Calculate_grade();
//void output();//파ì�¼ì¶œë ¥
};
student.h ¶
~cpp
#ifndef STUDENT_H_
#define STUDENT_H_
#include "const.h"
class Student
{
private:
char name[STUDENT_NUM][10];
double credit_average[STUDENT_NUM];
//장학� 명단� �어내기 위한 변수
//char sort_grade_name[STUDENT_NUM][10];
//double sort_grade[STUDENT_NUM];
public:
Student();
void name_find(); // ì�´ë¦„ì�„ 파ì�¼ì—�서 받아서 ì €ìž¥.
void average(); // í�‰ê· ì�„ 계산하여 ì €ìž¥.
void sort(); // í•™ì �í�‰ê· ì�´ 높ì�€ 순으로 ì €ìž¥.
void scholarship();//장학금, í•™ê³ í•™ìƒ� ì¶œë ¥,
double grade[STUDENT_NUM][SUBJECT_NUM];
};
#endif
const.h ¶
~cpp #define SUBJECT_NUM 4 #define STUDENT_NUM 120 #define SCHOLARSHIP_NUM 12
calculate.cpp ¶
~cpp
#include <iostream>
using namespace std;
#include <fstream>
#include "calculate.h"
#include "student.h"
void Calculate::input()
{
char temp[20];
char grade_input[SUBJECT_NUM][3];
double credit[9] = {4.5, 4.0, 3.5, 3.0, 2.5, 2.0, 1.5, 1.0, 0}; //í•™ì �
char grade_data[9][3] = {"A+", "A", "B+", "B", "C+", "C", "D+", "D", "F"};
fstream fin("input.txt");
for(int student_num = 0; student_num < 120; student_num++)
{
fin.getline(temp, 20, ':');
for(int i = 0; i < SUBJECT_NUM; i++)
{
fin.get();
fin >> grade_input[i];
for(int j = 0; j < 9; j++)
{
if(strcmp(grade_input[i], grade_data[j]) == 0)
a.grade[student_num][i] = credit[j];
}
}
}
}
/*
void Calculate::output()
{
fstream fout("output.txt");
}
*/
void Calculate::Calculate_grade()
{
a.name_find();
a.average();
a.sort();
a.scholarship();
}
student.cpp ¶
~cpp
#include <iostream>
using namespace std;
#include <fstream>
#include "student.h"
#include "calculate.h"
#include "const.h"
Student::Student()
{
for(int j = 0; j < STUDENT_NUM; j++)
{
credit_average[j] = 0.0;
for(int i = 0; i < SUBJECT_NUM; i++)
grade[j][i] = 0;
}
}
void Student::name_find()
{
char temp[20];
fstream fin("input.txt");
for(int i = 0; i < STUDENT_NUM; i++)
{
fin.getline(name[i], 10, ':');
fin.getline(temp, 20, 'n');
}
}
void Student::average()
{
double sum = 0;
for (int j = 0; j < STUDENT_NUM; j++)
{
for(int i = 0; i < SUBJECT_NUM; i++)
sum += grade[j][i];
credit_average[j] = (double)(sum/SUBJECT_NUM);
sum = 0;
}
}
void Student::scholarship()
{
//fstream fout("output.txt");
cout << "í•™ê³ ëª…ë‹¨" << endl;
for(int i = 0; i < STUDENT_NUM; i++)
{
if(credit_average[i] <= 1.5)
cout << name[i] << endl;
}
cout << "장학� 명단" << endl;
for(i = 0; i < SCHOLARSHIP_NUM; i++)
{
cout << name[i];
cout << endl;
}
}
void Student::sort()
{
char temp[10];
double temp_grade;
for(int i = 0; i < STUDENT_NUM; i++){
for(int j = i; j < STUDENT_NUM; j++){
if(credit_average[i] <= credit_average[j])
{
temp_grade = credit_average[i];
credit_average[i] = credit_average[j];
credit_average[j] = temp_grade;
strcpy(temp, name[j]);
strcpy(name[j], name[i]);
strcpy(name[i], temp);
}
}
}
}
source.cpp ¶
~cpp
#include <iostream>
#include <fstream>
#include "calculate.h"
#include "student.h"
using namespace std;
void main()
{
Calculate a;
a.input();
a.Calculate_grade();
}
나ì—�게 í• ë§� ¶
오옷.. 근래 본 ë©”ì�¸í•¨ìˆ˜ì¤‘ì—� 가장 심플한 함수였어~ ì™ ì§€ Hellow world!! ë�„ ì�´ë³´ë‹¨ ëª»í• ë“¯.ã…Ž
C++� 탈�쓴 C...나잖아..;;�;; 후훗..ㅎ
괜찮아 괜찮아~! ì�¸ìƒ� 모ì�´ë– ~ 막 ê°€ëˆˆê³ ì•¼~~>ã…ƒ<;;
�.. �기를 안좋� 곳으로 �어들�다닛..나�아�.훗..
ì¹¼í�˜ë ˆì�´íЏ(귀차니즘으로 ì˜�ì–´ ìƒ�ëžµ)함수와 스튜ë�˜íЏ 함수 양쪽ì—�서 둘다 파ì�¼ ìž…ì¶œë ¥ 하는게 있는것 ê°™ì�€ë�°..
아예 한쪽ì�€ 죽어ë�¼ ìž…ì¶œë ¥ 계산만 í•˜ê³ í•œìª½ì�€ ìž�료보관만 하는계 좀ë�” ê¹”ë�”í–ˆì�„ì§€ë�„~
후후후.. 실ì�€ 나ë�„ ëª¨ë¥´ê² .. (C++ì�„ ë°°ìš´ì �ì�´ 있어야.í›—.) ë�..하나만 잘하면 ë�˜ì§€..ã…Žã…Ž ì•„ì˜�ì�´ë§Œí�¼ Cë§Œ 하면 조케따~>ã…�<;;
ìž�ìž�~ 그럼 힘내서 오늘ë�„ ì¦�ê²�게 놀ìž�ê³ ~'ã…‡')/ ê³§ 개강ì�´ë‹ˆê¹Œ.í›—..ã…Ž 좋ì�€í•˜ë£¨!- 조현태
----
C++� 탈�쓴 C...나잖아..;;�;; 후훗..ㅎ
괜찮아 괜찮아~! ì�¸ìƒ� 모ì�´ë– ~ 막 ê°€ëˆˆê³ ì•¼~~>ã…ƒ<;;
�.. �기를 안좋� 곳으로 �어들�다닛..나�아�.훗..
ì¹¼í�˜ë ˆì�´íЏ(귀차니즘으로 ì˜�ì–´ ìƒ�ëžµ)함수와 스튜ë�˜íЏ 함수 양쪽ì—�서 둘다 파ì�¼ ìž…ì¶œë ¥ 하는게 있는것 ê°™ì�€ë�°..
아예 한쪽ì�€ 죽어ë�¼ ìž…ì¶œë ¥ 계산만 í•˜ê³ í•œìª½ì�€ ìž�료보관만 하는계 좀ë�” ê¹”ë�”í–ˆì�„ì§€ë�„~
후후후.. 실ì�€ 나ë�„ ëª¨ë¥´ê² .. (C++ì�„ ë°°ìš´ì �ì�´ 있어야.í›—.) ë�..하나만 잘하면 ë�˜ì§€..ã…Žã…Ž ì•„ì˜�ì�´ë§Œí�¼ Cë§Œ 하면 조케따~>ã…�<;;
ìž�ìž�~ 그럼 힘내서 오늘ë�„ ì¦�ê²�게 놀ìž�ê³ ~'ã…‡')/ ê³§ 개강ì�´ë‹ˆê¹Œ.í›—..ã…Ž 좋ì�€í•˜ë£¨!- 조현태
허아ì˜� C++스터디_2005여름 C++스터디_2005여름/í•™ì �계산프로그램










