Вниз  Разбор интересных задач
- 6.07.2013 / 10:31
Virus-ON
  Пользователь

Virus-ON 
Сейчас: Offline
Дано множество из 8 чисел. Надо найти самое большое и самое маленькое. При том что "самых" может быть не одно. + в личку и 200 монет 1 решившему. 200 монет второму. Решения должны быть РАЗНЫМИ.
- 6.07.2013 / 10:39
Xamgore
  Модератор форума

Xamgore 
Сейчас: Offline
Virus-ON, не увидел каких-либо ограничений. Но вот:
1. Отсортировать массив — крайние элементы и есть самое большое-самое маленькое (правда, могут быть и одинаковыми).
2. Искать максимум/минимум. Позже пройтись по массиву и вывести элементы, которые равны max/min.

Изменено Xamgore (6.07 / 10:39) (всего 1 раз)
- 6.07.2013 / 10:41
Virus-ON
  Пользователь

Virus-ON 
Сейчас: Offline
Xamgore, В виде кода на любом яп :-D
- 6.07.2013 / 10:49
Virus-ON
  Пользователь

Virus-ON 
Сейчас: Offline
Отправил ксакепу + и 200 монет так как его ответ был технически правильным. Но принимаю теперь решения в виде кода. Награда та же. Первому + и 200 монет, второму просто 200 монет.
- 6.07.2013 / 10:51
mrEDitor
  Пользователь

mrEDitor 
Сейчас: Offline
  1. program mnm
  2. var
  3.  min: integer := 0;
  4.  max: integer := 0;
  5.  arr: array of integer := (3,4,5);
  6. begin
  7.   foreach val: integer in arr do
  8.   begin
  9.     If val < min then
  10.       min := val;
  11.     If val > max then
  12.       max := val;
  13.     end.
  14.   writeln('min: ', min);
  15.   writeln('max: ', max);
  16. End.
Или надо найти номера в массиве, а не значения?

Изменено mrEDitor (6.07 / 10:52) (всего 1 раз)
- 6.07.2013 / 10:56
Virus-ON
  Пользователь

Virus-ON 
Сейчас: Offline
mrEDitor, Именно что номера
- 6.07.2013 / 11:36
Dmitriy
  Пользователь

Dmitriy 
Сейчас: Offline
Не знаю правильно ли:gg:
  1. float set[8];
  2. ...
  3. int minel[8],maxel[8];
  4. int minb,maxb,min,max;
  5. min=m[0];
  6. max=m[0];
  7. minel[0]=0;
  8. maxel[0]=0;
  9. minb=1;
  10. maxb=1;
  11. for(int i=1;i<8;i++){
  12.  if(set[i]<min){minel[0]=i;minb=1;continue;}
  13.  if(set[i]=min){minel[minb]=i;minb++;continue;}
  14.  if(set[i]>max){maxel[0]=i;maxb=1;continue;}
  15.  if(set[i]=max){maxel[maxb]=i;maxb++;continue;}
  16. }
  17. printf("mins:\n");
  18. for(int i=0;i<minb;i++)printf("Elem:%d Num:%d\n",minel[i],set[minel[i]]);
  19. printf("maxs:\n");
  20. 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
  Пользователь

Virus-ON 
Сейчас: Offline
Ты взорвал мой мосск.
- 6.07.2013 / 11:44
Dmitriy
  Пользователь

Dmitriy 
Сейчас: Offline
mrEDitor, а если все элементы будут равны нулю?
- 6.07.2013 / 11:52
Virus-ON
  Пользователь

Virus-ON 
Сейчас: Offline
Ага, понял. Сейчас отправлю монеты
Наверх  Всего сообщений: 751
Фильтровать сообщения
Поиск по теме
Файлы топика (34)