(adsbygoogle = window.adsbygoogle || []).push({ google_ad_client: "ca-pub-8242763509535969", enable_page_level_ads: true }); 'code' 카테고리의 글 목록 (6 Page) :: 깜냥깜냥
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import java.util.Scanner;
 
public class StudentScore {
    public static void main(String[] ar) {
        Scanner sc = new Scanner(System.in);
 
        String num;
        System.out.print("How many people? ");
        num = sc.next();
        String[] name = new String[Integer.valueOf(num)];
        String[][] score = new String[Integer.valueOf(num)][4];
        String[] avg = new String[Integer.valueOf(num)];
 
        
        for (int i = 0; i < score.length; i++) {
            System.out.print("Name Input: ");
            name[i] = sc.next();
            for (int j = 0; j < score[i].length-1; j++) {
                System.out.print("Score Input: ");
                score[i][j] = sc.next();
                
            }
            score[i][3]=Integer.toString(Integer.valueOf(score[i][0])+Integer.valueOf(score[i][1])+Integer.valueOf(score[i][2]));
            avg[i]= Float.toString(Float.parseFloat(score[i][3])/3);
        }
        System.out.println("Name""\t"+"Kor"+"\t"+"Eng"+"\t"+"Math"+"\t"+"Total"+"\t"+"Avg");
        for (int i = 0; i < score.length; i++) {
            System.out.print(name[i] + "\t");
            for (int j = 0; j < score[i].length; j++) {
                System.out.print(score[i][j] + "\t");
            }
            System.out.println(avg[i]);
        }
    }
}
 


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import java.util.Scanner;
 
public class HelloWorld{
 
    public static void main(String[] args) { // 메소드
 
        int a, b;
        String op;
        char yn;
 
        do {
            Scanner sc = new Scanner(System.in);
 
            System.out.print("First Number Input:"); // 첫번째 숫자입력
            a = sc.nextInt();
 
            System.out.print("Operation Input:"); // 연산기호 입력
            op = sc.next();
 
            System.out.print("Two Number Input:");// 두번째 숫자입력
            b = sc.nextInt();
 
            switch (op) {
            case "+":
                System.out.println(a + " " + op + " " + b + " " + "=" + " " + (a + b));
                break;// a+" "+op+" "+b+" "+"="+" "+(a+b)-> a+b=(a+b)
            case "-":
                System.out.println(a + " " + op + " " + b + " " + "=" + " " + (a - b));
                break;
            case "*":
                System.out.println(a + " " + op + " " + b + " " + "=" + " " + (a * b));
                break;
            case "/":
                System.out.println(a + " " + op + " " + b + " " + "=" + " " + ((float) a / (float) b));
                break// int->float형 변환
            default:
                System.out.println("Error!");
            }
 
            System.out.print("continue? Y or N:");
            yn = sc.next().charAt(0);
        } while (yn == 'y' || yn == 'Y');// y,Y면 다시.
    }
}


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import java.util.Scanner;
 
public class StudentScore {
    public static void main(String[] ar) {
        Scanner sc = new Scanner(System.in);
 
        int num;
        System.out.print("Number Input: ");
        num = sc.nextInt();
        String[] name = new String[num];
        int[][] score = new int[num][4];
        double[] avg = new double[num];
 
        for (int i = 0; i < score.length; i++) {
            System.out.print("Name Input: ");
            name[i] = sc.next();
            for (int j = 0; j < score[i].length - 1; j++) {
                System.out.print("Score Input: ");
                score[i][j] = sc.nextInt();
                score[i][3] += score[i][j];
            }
            avg[i] = score[i][3] / 3;
        }
        System.out.println("Name""\t"+"Kor"+"\t"+"Eng"+"\t"+"Math"+"\t"+"Total"+"\t"+"Avg");
        for (int i = 0; i < score.length; i++) {
            System.out.print(name[i] + "\t");
            for (int j = 0; j < score[i].length; j++) {
                System.out.print(score[i][j] + "\t");
            }
            System.out.println(avg[i]);
        }
    }
}
 


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#include<iostream>
using namespace std;
 
const int MAX = 10;
 
template <typename T>
class Memory {
 
protected:
    T *data;
    int top;
    int front;
    T a;
public:
    Memory() {
        data = new T[10];
        top = 0;
    }
 
    void push(T num) {
        if (top == MAX) {
            cout << "FULL!!" << endl;
            return;
        }
        else {
            data[top++] = num;
        }
    }
    virtual T pop() = 0;
    virtual ~Memory() {
        delete[]data;
        cout << "소멸자 함수" << endl;
    }
};
template <typename T>
class Stack :public Memory<T> {
public:
    T pop() {
        if (top == 0) {
            cout << "EMPTY!!!" << endl;
            return 0;
        }
        else {
            return data[--top];
        }
    }
};
 
template <typename T>
class Queue :public Memory<T> {
 
public:
    Queue() {
        front = 0;
    }
    T pop() {
        if (top == front) {
            cout << "EMPTY!!!" << endl;
            return 0;
        }
        else {
            if (front == MAX) {
                front = 0;
            }
            return data[(front++)];
        }
    }
};
 
void main() {
 
    Memory<double> *p;
    Stack<double> s;
    Queue<double> q;
    
 
    int num;
    double a;
 
    do {
        cout << "1.stack" << "\t" << "2.queue" << "\t" << "3.Quit" << endl;
        cin >> num;
 
        if (num == 1) {
            p = &s;
        }
        else if (num == 2) {
            p = &q;
 
        }
        else if (num == 3) {
            continue;
        }
        else {
            cout << "Not num" << endl;
            cout << "Bye" << endl;
            num = 3;
            continue;
        }
 
        cout << "1.push" << "\t" << "2.pop" << endl;
        cin >> num;
 
        if (num == 1) {
 
            cout << "Data input : ";
            cin >> a;
            p->push(a);
 
 
        }
        else {
            cout << " output Data : " << p->pop() << endl;
        }
    } while (num != 3);
}


'code > C++' 카테고리의 다른 글

[C++] 템플릿  (0) 2017.04.20
setw() 함수  (0) 2017.04.20
[c++] 연산자 함수  (0) 2017.04.20
[c++] private 상속  (0) 2017.04.20
[C++] protected 상속  (0) 2017.04.20
오버라이딩을 사용하였을 때
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include<iostream>
using namespace std;
 
void change(int &a, int &b) {
    int c = a;
    a = b;
    b = c;
}
void change(char &a, char &b) {
    char c= a;
    a = b;
    b = c;
 
}
 
void change(double &a, double &b) {
    double c = a;
    a = b;
    b = c;
}
void main() {
    int a = 1, b = 2;
    char c = '3', d = '4';
    double e = 5.3, f = 4.7;
 
    change(a, b);
    cout << a << "\t" << b << endl;
 
    change(c, d);
    cout << c << "\t" << d << endl;
 
    change(e, f);
    cout << e << "\t" << f << endl;
}



템플릿을 사용 했을 때

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include<iostream>
using namespace std;
 
//template<class T>//T는 미결정 타입입니다. 아무거나 적어도 상관없습니다. class는 구표준입니다.
template<typename T>
void change(T &a, T &b) {
    T c = a;
    a = b;
    b = c;
}
void main() {
    int a = 1, b = 2;
    char c = '3', d = '4';
    double e = 5.3, f = 4.7;
 
    change(a, b);
    cout << a << "\t" << b << endl;
 
    change(c, d);
    cout << c << "\t" << d << endl;
 
    change(e, f);
    cout << e << "\t" << f << endl;
}

오버라이딩과 다르게 같은 함수를 다른 타입도 쓸 수 있습니다.


템플릿을 밑으로 정의 했을 때
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include<iostream>
using namespace std;
 
template<typename T>
void change(T &a, T &b);
 
//template<class T>//T는 미결정 타입입니다. 아무거나 적어도 상관없습니다. class는 구표준입니다.
void main() {
    int a = 1, b = 2;
    char c = '3', d = '4';
    double e = 5.3, f = 4.7;
 
    change(a, b);
    cout << a << "\t" << b << endl;
 
    change(c, d);
    cout << c << "\t" << d << endl;
 
    change(e, f);
    cout << e << "\t" << f << endl;
}
template<typename T>
void change(T &a, T &b) {
    T c = a;
    a = b;
    b = c;
}
 

 


'code > C++' 카테고리의 다른 글

[C++] Stack&Queue (예외처리, 소멸자, 템플릿 포함)  (0) 2017.04.20
setw() 함수  (0) 2017.04.20
[c++] 연산자 함수  (0) 2017.04.20
[c++] private 상속  (0) 2017.04.20
[C++] protected 상속  (0) 2017.04.20

+ Recent posts