Сложные задачи в паскале

Задачи в сборнике классифицированы по основным разделам: линейные алгоритмы, разветвляющиеся алгоритмы, циклические алгоритмы, обработка массивов, обработка строк и создание графических изображений. После каждого раздела предлагаются задачи для самостоятельного решения. Внутри каждого раздела задачи по мере возможности расположены по возрастанию степени трудности.

лабораторные работы и задачи по программированию и информатике, егэ по информатике

Для начала рассмотрим не сильно сложную задачу с одномерными массивами в Pascal:

Результат:


Подумайте, пригодится ли в программе счетчик или нет, нужны ли дополнительные переменные.

const m = 20; var arr: array[1..m] of byte; max_index: byte; i: byte; begin randomize; for i := 1 to m do begin arr[i] := random(100); write (arr[i]:3); end; max_index := 1; for i := 2 to m do if arr[i] > arr[max_index] then begin max_index := i; end; writeln; writeln (‘Max = ‘,arr[max_index]); writeln (‘position: ‘, max_index); end.

Результат:

Следующую сложную задачу с одномерными массивы следует разобрать подробно.

const n=20; var arr: array[1..n] of integer; i,j,m:integer; begin randomize; for i:=1 to n do begin arr[i]:=random(50); write(arr[i]:4); end; writeln; m:=n; i:=1; while i n переменной m требуется, т.к. n — константа и не может быть изменена. Поскольку при «просмотре» массива в цикле while некоторые элементы будут удаляться, то значение m , обозначающее длину массива, будет уменьшаться.

  • строка 21: Если очередной элемент не удаляется, то переходим к просмотру следующего элемента ( i := i + 1 ) и не уменьшаем массив ( m не меняется).
  • Пример:

    1. Определите в массиве A номер первого элемента, равного X .
    2. Определите номер первого элемента, равного X , в первой половине массива A (массив имеет чётное число элементов).
    3. Определите номер первого элемента, равного X , во второй половине массива A (массив имеет чётное число элементов).

    Потренируйтесь в решении задач по теме, щелкнув по пиктограмме:

    Читайте также  Преобразователь xls в pdf

    Дистанционная развивающая олимпиада

    Олимпиадные задачи по информатике с решениями

    Предлагается более 60 олимпиадных задач, условно разбитых на несколько групп по степени их сложности и тематике. Для каждой из групп предлагаются примеры решения задач, основные идеи их решения, программы на языке Паскаль. Задачи излагаются в порядке нарастания трудности.

    Используются следующие обозначения:
    Решение – переход к решению задачи;
    Подсказка – переход к подсказке по задаче.

    Ссылка на основную публикацию
    Adblock detector