님이 해놓은 코드는 통 무슨 소린지...^^
1. 정수를 저장할 변수라면 float가 아니라 int를 써야 합니다.
2. 10개의 정수를 입력받으면서 동시에 검사도 해야 하니 for 루프든 while 루프든 돌려야 합니다.
3. for문을 겹으로 돌린 부분은 당최 무엇을 하려 한것인지 모르겠네요.
아래와 같이 해보시죠.
#include<iostream.h>
#include<limits.h>
const int maxCount=10;
int i ,imin ,imax ,nums[maxCount];
imin=INT_MAX;
imax=INT_MIN;
for(i=0 ;i<maxCount ;)
{
cout << "nums[" << i << "]=";
cin >> nums[i];
if(nums[i]<0 || nums[i]>=100){
cout << "입력이 잘못되었습니다(0~99).\n";
}else{
if(nums[i]<imin) imin=nums[i];
if(nums[i]>imax) imax=nums[i];
i++;
}
}
for (i=0;i<maxCount;i++) cout << nums[i] <<'\n';
cout << "최소값은 " << imin << '\n';
cout << "최대값은 " << imax << '\n';
모치 님이 쓰신 글 :
: . 키보드로부터 정수 10개를 받아들여 (array사용) 그 값들을 비교하여
: 이들중 최대값및 최소값을 구하는 프로그램을 작성하시요.
: (1) max() 함수 사용하지 말고 If구문을 사용할것.
: (2) 음수및 100 이상의 값이 입력되면 입력을 취소하고 다시 다른 입력값을
: 받아들이게 할것.
: (3) array 안의 값 및 최대값 & 최소값을 보여줄것.
:
:
: #include<iostream.h>
: #include<process.h>
:
: void main()
: {
: const int N=100;
: int i,j,m,n;
: float a[N],w;
: cout << "n="; cin >> n;
:
: if (n>=N) {
: cerr << " memory over ";
: exit(1);
: }
: for (i=0; i<n; ++i) {
: cout << "a[" << i << "]=";
: cin >> a[i];
: }
: for (m=n-1; i>=0; --i) {
: for (j=0; j<m; ++j) {
: if (a[j]>a[j+1]) {
: w=a[j];
: a[j]=a[j+1];
: a[j+1]=w;
: }
: }
: }
: if(a[j]>=100){
: cout << "입력이 잘못되었습니다. \n";
: }
: else{
: for (i=0;i<n;++i) cout <