6.07.2013 / 10:31 | |
Virus-ON Пользователь Сейчас: Offline
Имя: Макс Откуда: Чернигов Регистрация: 13.10.2011
| Дано множество из 8 чисел. Надо найти самое большое и самое маленькое. При том что "самых" может быть не одно. + в личку и 200 монет 1 решившему. 200 монет второму. Решения должны быть РАЗНЫМИ.
|
6.07.2013 / 10:39 | |
Xamgore Модератор форума Сейчас: Offline
Регистрация: 20.06.2012
| Virus-ON, не увидел каких-либо ограничений. Но вот: 1. Отсортировать массив — крайние элементы и есть самое большое-самое маленькое (правда, могут быть и одинаковыми). 2. Искать максимум/минимум. Позже пройтись по массиву и вывести элементы, которые равны max/min.
Изменено Xamgore (6.07 / 10:39) (всего 1 раз) |
6.07.2013 / 10:41 | |
Virus-ON Пользователь Сейчас: Offline
Имя: Макс Откуда: Чернигов Регистрация: 13.10.2011
| Xamgore, В виде кода на любом яп |
6.07.2013 / 10:49 | |
Virus-ON Пользователь Сейчас: Offline
Имя: Макс Откуда: Чернигов Регистрация: 13.10.2011
| Отправил ксакепу + и 200 монет так как его ответ был технически правильным. Но принимаю теперь решения в виде кода. Награда та же. Первому + и 200 монет, второму просто 200 монет.
|
6.07.2013 / 10:51 | |
mrEDitor Пользователь Сейчас: Offline
Имя: Эдуард Откуда: Новороссийск » Таганрог Регистрация: 13.03.2011
| program mnm
var
min: integer := 0;
max: integer := 0;
arr: array of integer := (3,4,5);
begin
foreach val: integer in arr do
begin
If val < min then
min := val;
If val > max then
max := val;
end.
writeln('min: ', min);
writeln('max: ', max);
End.
Или надо найти номера в массиве, а не значения? Изменено mrEDitor (6.07 / 10:52) (всего 1 раз) |
6.07.2013 / 10:56 | |
Virus-ON Пользователь Сейчас: Offline
Имя: Макс Откуда: Чернигов Регистрация: 13.10.2011
| mrEDitor, Именно что номера
|
6.07.2013 / 11:36 | |
Dmitriy Пользователь Сейчас: Offline
Имя: Дмитрий Откуда: В тайге живу Регистрация: 07.03.2010
| Не знаю правильно ли float set[8];
...
int minel[8],maxel[8];
int minb,maxb,min,max;
min=m[0];
max=m[0];
minel[0]=0;
maxel[0]=0;
minb=1;
maxb=1;
for(int i=1;i<8;i++){
if(set[i]<min){minel[0]=i;minb=1;continue;}
if(set[i]=min){minel[minb]=i;minb++;continue;}
if(set[i]>max){maxel[0]=i;maxb=1;continue;}
if(set[i]=max){maxel[maxb]=i;maxb++;continue;}
}
printf("mins:\n");
for(int i=0;i<minb;i++)printf("Elem:%d Num:%d\n",minel[i],set[minel[i]]);
printf("maxs:\n");
for(int i=0;i<maxb;i++)printf("Elem:%d Num:%d\n",maxel[i],set[maxel[i]]);
|
6.07.2013 / 11:39 | |
Virus-ON Пользователь Сейчас: Offline
Имя: Макс Откуда: Чернигов Регистрация: 13.10.2011
| Ты взорвал мой мосск.
|
6.07.2013 / 11:44 | |
Dmitriy Пользователь Сейчас: Offline
Имя: Дмитрий Откуда: В тайге живу Регистрация: 07.03.2010
| mrEDitor, а если все элементы будут равны нулю?
|
6.07.2013 / 11:52 | |
Virus-ON Пользователь Сейчас: Offline
Имя: Макс Откуда: Чернигов Регистрация: 13.10.2011
| Ага, понял. Сейчас отправлю монеты
|