ЗАДАЧИ
problems.ru
О проекте | Об авторах | Справочник
Каталог по темам | по источникам |
К задаче N

Проект МЦНМО
при участии
школы 57
Фильтр
Сложность с по   Класс с по  
Выбрана 1 задача
Версия для печати
Убрать все задачи

Вам дана программа, решающая 136 задачу (p139.pas).
Требуется найти в ней ошибку, и объяснить (письменно
или устно), почему так происходит.

Текст программы p139.pas

const nmax=100;

var a:array[1..nmax] of integer;
    n:integer;
    i,j,g:integer;

    f1,f2:text;

begin
assign(f1,'input.txt');
reset(f1);
assign(f2,'output.txt');
rewrite(f2);
                                  {Чтение входных данных}
read(f1,n);
for i:=1 to n do read(f1,a[i]);
                                  {Сортировка массива}

for i:=1 to n do begin            {Подбираем число на i-ое место}

  g:=i;                           {Считаем, что самое маленькое число,
                                   которое нам встретилось, стоит на месте i}

  for j:=i+1 to n do              {Перебираем все числа с i+1 до конца массива}
    if a[j]<a[g] then g:=j;       {Если нашли число, которое меньше,
                                   чем то, что уже найдено, запоминаем его}

                                  {Меняем местами числа, стоящие на i-ом и
                                   на g-ом местах }
                                  {Если a[i]=x, a[g]=y, то после выполнения
                                   команды: }
  a[i]:=a[i]+a[g];                {a[i]=x+y, a[g]=y}
  a[g]:=a[i]-a[g];                {a[i]=x+y, a[g]=(x+y)-y=x}
  a[i]:=a[i]-a[g];                {a[i]=(x+y)-x=y}
                                  {То есть после этого a[i]=y, a[g]=x
                                   обмен значений произошел}

  end;

                                  {Выводим результат}
for i:=1 to n do
  write(f2,a[i],' ');
close(f1);
close(f2);
end.

   Решение

Задачи

Страница: 1 2 >> [Всего задач: 7]      



Задача 88323  (#12.1)

Тема:   [ Математическая логика (прочее) ]
Сложность: 2+
Классы: 5,6,7,8

Пять братьев. Один из пяти братьев испек маме пирог. Андрей сказал: «Это Витя или Толя». Витя сказал: «Это сделал не я и не Юра». Толя сказал: «Вы оба шутите». Дима сказал: «Нет, один из них сказал правду, а другой — нет». Юра сказал: «Нет, Дима, ты не прав». Мама знает, что трое из ее сыновей всегда говорят правду. Кто испек пирог?
Прислать комментарий     Решение


Задача 88324  (#12.2)

Тема:   [ Математическая логика (прочее) ]
Сложность: 2+
Классы: 6,7

Команды А, Б, В, Г и Д участвовали в эстафете. До соревнований пять болельщиков, высказали следующие прогнозы.
  1) команда Д займет 1-е место, команда В – 2-е;
  2) команда А займет 2-е место, Г – 4-е;
  3) В – 3-е место, Д – 5-е;
  4) В – 1-е место, Г – 4-е;
  5) А – 2-е место, В – 3-е.
В каждом прогнозе одна часть подтвердилась, а другая – нет. Какое место заняла каждая из команд?

Прислать комментарий     Решение

Задача 88325  (#12.3)

Темы:   [ Математическая логика (прочее) ]
[ Турниры и турнирные таблицы ]
Сложность: 2+
Классы: 6,7,8

В забеге шести спортсменов Андрей отстал от Бориса и еще от двух спортсменов. Виктор финишировал после Дмитрия, но ранее Геннадия. Дмитрий опередил Бориса, но все же пришел после Евгения. Какое место занял каждый спортсмен?

Прислать комментарий     Решение

Задача 88326  (#12.4)

Тема:   [ Математическая логика (прочее) ]
Сложность: 2
Классы: 5,6,7

Подруги. Три подруги были на выпускном балу в белом, красном и голубом платье. Их туфли были тех же трёх цветов. Только у Тамары цвета платья и туфель совпадали. Валя была в белых туфлях. Ни платье, ни туфли Лиды не были красными. Определите цвета платьев и туфель у подруг.
Прислать комментарий     Решение


Задача 88327  (#12.5)

Тема:   [ Математическая логика (прочее) ]
Сложность: 2+
Классы: 7,8

Познакомимся с тремя людьми: Алешиным, Беляевым и Белкиным. Один из них – архитектор, другой – бухгалтер, третий – археолог. Один живет в Белгороде, другой – в Брянске, третий в Астрахани. Требуется узнать, кто где живет и у кого какая профессия.
  1) Белкин бывает в Белгороде лишь наездами и то весьма редко, хотя все его родственники постоянно живут в этом городе.
  2) У двух из этих людей названия профессий и городов, в которых они живут, начинаются с той же буквы, что и их фамилии.
  3) Жена архитектора доводится Белкину младшей сестрой.

Прислать комментарий     Решение

Страница: 1 2 >> [Всего задач: 7]      



© 2004-... МЦНМО (о копирайте)
Пишите нам

Проект осуществляется при поддержке Департамента образования г.Москвы и ФЦП "Кадры" .