max = a[0];
min = a[1];
Минимальный и максимальный элементы массива
#include <conio.h>
int main()
{
int a[8], b, c;
int i;
int max=0;
int min=0;
for(i=0;i<8; i++)
scanf ("%d",&a);
b=0;
c=0;
for(i=0; i<8; i++)
{
if (i<4)
b=b+a;
else
c=c+a;
}
printf("summa pervih chetireh elementov %d\n", b);
printf("summa poslednih chetireh elementov %d\n", c);
for (i=0; i<8; i++)
{
if (a>max)
max=a;
}
printf ("max = %d\n", max);
for (i=0; i<8; i++)
{
if (a<min)
min=a;
}
printf ("min = %d\n", min);
getch();
return 0;
}
Здравствуйте, есть программа, но скока я не мучаюсь, минимальный элемент у меня 0, и максимальный тоже 0, если вводить только отрицательные числа. Я как понимаю мы ввели их нулями тут - int max=0; int min=0; как сделать так, чтобы минимальные и максимальные элементы вводились не 0, а числа введенные с клавиатуры? Заранее спасибо. Весь инет облазил и всю летературу, что есть перечитал, так и не получилось:confused:
Цитата:
Весь инет облазил и всю летературу, что есть перечитал, так и не получилось
О_о
После ввода с клавиатуры написать
Код:
Немного причешу код.
Код:
#include <conio.h>
#define SIZE 8
int main()
{
int a[SIZE];
int sumBegin, sumEnd;
int max, min;
int i;
for(i=0; i<SIZE; ++i)
scanf("%d", &a);
sumBegin = 0;
sumEnd = 0;
for(i=0; i<4; ++i)
sumBegin += a;
for(i=SIZE-4; i<SIZE; ++i)
sumEnd += a;
printf("summa pervih chetireh elementov %d\n", sumBegin);
printf("summa poslednih chetireh elementov %d\n", sumEnd);
max = a[0];
min = a[0];
for (i=1; i<SIZE; ++i)
{
if (a > max)
max = a;
if (a < min)
min = a;
}
printf ("max = %d\n", max);
printf ("min = %d\n", min);
getch();
return 0;
}
#define SIZE 8
int main()
{
int a[SIZE];
int sumBegin, sumEnd;
int max, min;
int i;
for(i=0; i<SIZE; ++i)
scanf("%d", &a);
sumBegin = 0;
sumEnd = 0;
for(i=0; i<4; ++i)
sumBegin += a;
for(i=SIZE-4; i<SIZE; ++i)
sumEnd += a;
printf("summa pervih chetireh elementov %d\n", sumBegin);
printf("summa poslednih chetireh elementov %d\n", sumEnd);
max = a[0];
min = a[0];
for (i=1; i<SIZE; ++i)
{
if (a > max)
max = a;
if (a < min)
min = a;
}
printf ("max = %d\n", max);
printf ("min = %d\n", min);
getch();
return 0;
}
PS за транслит убыв бы!
Цитата: 61201
Здравствуйте, есть программа, но скока я не мучаюсь, минимальный элемент у меня 0, и максимальный тоже 0, если вводить только отрицательные числа. [COLOR="Red"]Я как понимаю мы ввели их нулями тут - int max=0; int min=0; как сделать так, чтобы минимальные и максимальные элементы вводились не 0, а числа введенные с клавиатуры?[/COLOR] Заранее спасибо. Весь инет облазил и всю летературу, что есть перечитал, так и не получилось:confused:
Написал, что еле-еле понятно стало :D
Лучше работать с индексами, чтобы можно было работать с элементами массива свободно потом(переставлять и тп).
Код:
int max = 0, min = 0;
for (i=0; i<SIZE; ++i)
{
if (a > a[max])
max = i;
if (a < a[min])
min = i;
}
printf ("max = %d\n", a[max]);
printf ("min = %d\n", a[min]);
for (i=0; i<SIZE; ++i)
{
if (a > a[max])
max = i;
if (a < a[min])
min = i;
}
printf ("max = %d\n", a[max]);
printf ("min = %d\n", a[min]);