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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
/*
7개의 자연수가 주어질 때, 이들 중 홀수인 자연수들을 모두 골라 그 합을 구하고, 고른 홀수들 중 최소값을 찾는 프로그램을 작성하시오.
예를 들어, 7개의 자연수 12, 77, 38, 41, 53, 92, 85가 주어지면 이들 중 홀수는 77, 41, 53, 85이므로 그 합은
77 + 41 + 53 + 85 = 256
이 되고,
41 < 53 < 77 < 85
이므로 홀수들 중 최소값은 41이 된다.
입력
첫 째 줄부터 일곱 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 100보다 작다.
출력
홀수가 존재하지 않는 경우에는 첫째 줄에 -1을 출력한다.
홀수가 존재하는 경우 첫째 줄에 홀수들의 합을 출력하고, 둘째 줄에 홀수들 중 최소값을 출력한다.
입력 예시
12 77 38 41 53 92 85
출력 예시
256 41
*/
본인 해답
void main()
{
int size =7;
int array[size];
for(int i=0; i<size; i++)
{
printf("%d번째 데이터 입력 :", i+1);
scanf("%d", &array[i]);
}
if( check(array,7) == 1)
{
printf("합 : %d\n", sum(array,7));
printf("최소 : %d\n", min(array,7));
}
else if( check(array,7) == -1)
{
printf("-1");
}
else
printf("error");
}
int check(int array[], int size)
{
int check = 0;
for(int i=0; i<size; i++ )
{
if(array[i] % 2 == 0)
{
check++;
}
if(check == size)
{
check = size;
return -1;
}
}
return 1;
}
int sum(int array[],int size)
{
int sum = 0;
for(int i=0; i<size; i++)
{
if(array[i] % 2 == 1)
{
sum += array[i];
}
}
return sum;
}
int min(int array[], int size)
{
int min = array[0];
for(int i=0; i<size; i++)
{
if (array[0] > array[i])
{
min = array[i];
}
}
return min;
}
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
http://colorscripter.com/info#e" target="_blank" style="text-decoration:none;color:white">cs |
코딩 연습