Программа для некоторого арифметического устройства представляет собой последовательность символов

Тема «Алгоритмизация и программирование» наиболее широко представлена в ЕГЭ по информатике. Для успешного выполнения заданий этой темы нужно знать и уметь исполь­зовать на практике основные алгоритмические конструкции:

• полное и неполное ветвление;

• цикл с предусловием;

• цикл с постусловием;

• цикл с заданным числом итераций;

• вспомогательный алгоритм (подпрограмма).

Необходимо уметь составлять, анализировать и выполнять алгоритмы, используя различ­ные формы записи:

• графический язык (блок-схемы);

• формальный язык (язык программирования).

Требуется также уметь использовать простые структуры данных — одномерные и дву­мерные массивы.

5.1. Программа для некоторого арифметического устройства представляет собой последова­тельность символов «+» и « • ». Символ «+» означает прибавление единицы к текуще­му результату вычислений, « • » — умножение на 2. Выполнение программы произво­дится слева направо. Найдите результат работы устройства для заданного исходного числа и программы:

4 задание ЕГЭ информатика Для кодирования некоторой последовательности, состоящей

5.2. Составьте для устройства, описанного в предыдущем задании, программу длиной не более 6 символов, преобразующую заданное исходное число в заданный результат:

А) из 0 получить 17.

Ответ: ________________________________________________________________________

Б) из 3 получить 30.

Ответ: ______________________________________________________________

В) из -5 получить -30.

Ответ: __________________________________________________________________________

Г) из -2 получить 5.

Ответ:_________________________________________________________________________

Рассмотрим пример решения задачи с исполнителем РОБОТ

Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:

При выполнении этой команды РОБОТ перемещается на соответствующую клетку.

Команды проверки истинности условия на наличие стены у той клетки, где он находится:

Если РОБОТ начнет движение в сторону стены, то он разрушится.

А) Сколько клеток данного лабиринта соответствуют требованию, что, выполнив предложен­ную программу, РОБОТ остановится в той же клетке, с которой он начал движение?

ПОКА справа свободно ДЕЛАТЬ вправо ПОКА снизу свободно ДЕЛАТЬ вниз

ПОКА слева свободно ДЕЛАТЬ — влево ПОКА сверху свободно ДЕЛАТЬ вверх

В ответе запишите число — количество таких клеток, а далее, через запятые, их адреса (сначала идет латинская буква столбца, а затем цифра строки).

Например, нижний левый угол лабиринта имеет адрес Al.

Сначала определим свойства клеток, отвечающих требованию задачи.

Поскольку последний цикл программы РОБОТА

ДЕЛАТЬ вверх искомые клетки должны иметь границу сверху.

Таких клеток 14: вся верхняя горизонталь и клетки F7, G6 , B4, H4, Е2 и Hl.

Предпоследний цикл программы РОБОТА

Это значит, что в вертикали искомой клетки ниже нее обязательно должна быть клетка с левой границей, от которой «отскочил» РОБОТ перед тем, как пойти вверх.

Задание 4 | ЕГЭ по информатике | ДЕМО-2023

Из ранее найденных клеток этому условию удовлетворяют 4 — A8, B8, В4, G6.

При этом В8 надо тоже отбросить, поскольку в ее вертикали на пути от клетки В2 стоит го­ризонтальная граница между В4 и В5.

Далее используем остальные фрагменты программы. Выполнив программу целиком для трех оставшихся клеток, получаем, что условию задачи удовлетворяют только две из них — А8 и В4.

Ответ’.2, A8, В4.

5.3. Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:

При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответ­ственно: вверх t, вниз ф, влево, вправо —

Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:

Выполняется, пока условие истинно, иначе происходит переход на следующую стро­ку.

Если РОБОТ начнет движение в сторону стены, то он разрушится и программа пре­рвется.

Нарисуйте путь РОБОТА в лабиринте, если он начал движение по программе из ука­занной клетки.

вправо пока вниз пока влево пока вверх конец в4 » width=»639″ height=»185″ >

ПОКА влево

ПОКА вверх

ПОКА вправо ПОКА вниз КОНЕЦ

ПОКА влево

ПОКА вправо

ПОКА вниз ПОКА вверх КОНЕЦ

5.4. Для исполнителя РОБОТ, описанного в предыдущем задании, составить программу не

Более чем из семи строк (включая строки «НАЧАЛО» и «КОНЕЦ»), обеспечивающую

Для решения задач на определение значения переменной после выполнения фрагмента программы или блок-схемы удобно использовать таблицу значений переменных.

Пример. Дана блок-схема алгоритма. Требуется найти значение переменной с после завер­шения алгоритма.

Решение 1-й способ

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

Значение А

Значение С

Итак, ответ С= 4.

Внимательно проанализировав блок-схему, можно заметить, что она иллюстрирует последо­вательное удвоение переменной а, изначально равной единице, до тех пор, пока она не дос­тигнет значения 16 = 24. Отсюда С = Iog216 = 4 .

5.5. Впишите во фрагмент блок-схемы пропущенные инструкции, необходимые для пра­вильного решения поставленной задачи.

А) Найти минимальный элемент массива MИз 24 элементов.

Б) Найти сумму отрицательных элементов массива MИз 24 элементов.

В) Найти сумму положительных элементов массива M из 22 элементов, имеющих четные номера (нумерация элементов массива начинается с единицы).

Г) В массиве M 45 элементов. Найти, сколько подряд идущих элементов этого массива, начиная с первого, образуют возрастающую последовательность.

5.6. Составьте и запишите на естественном языке алгоритм, выполняющий:

А) Решение уравнения Ах = Ъ, где А и Ъ — числовые исходные данные;

Б) поиск количества минимальных элементов в заданном целочисленном массиве из

5 THEN s=s+A(i) NEXT I

For i:=l to n do A[i]:=ll-i;

For i:=l to n do if i>5 then s:=s+A [i] ;

Чему будет равно значение переменной SПосле выполнения данного алгоритма?

В) Дан фрагмент программы, обрабатывающей массив А из П элементов:

Алгоритмический

END IF NEXT k NEXT n

For i:=l to n do for k:=l to n do if i>k then

Как будет зависеть от П сумма элементов массива А после выполнения алгоритма? На­пишите формулу вычисления суммы элементов массива А в зависимости от П.

Ответ:_________________________________________________________________________

Б) Значения двумерного массива размера П × п задаются с помощью вложенного операто­ра цикла в представленном фрагменте программы:

Алгоритмический

FOR i = l ТО п FOR k=l ТО n IF i=k THEN

END IF NEXT к NEXT n

For i:=l to n do for k:=l to n do if i=k then

Как будет зависеть от П сумма элементов массива А после выполнения алгоритма? На­пишите формулу вычисления суммы элементов массива А в зависимости от П.

Ответ: ________________________________________________________________________

В) Значения двумерного массива размера П × п задаются с помощью вложенного операто­ра цикла в представленном фрагменте программы:

Читайте также:
Как устроиться тестировщиком программ

Алгоритмический

FOR i = l ТО n FOR k=l ТО n IF i>k THEN

END IF NEXT к NEXT n

For i:=l to n do for k:=l to n do if i>k then

Как будет зависеть от П сумма элементов массива А после выполнения алгоритма? На­пишите формулу вычисления суммы элементов массива А в зависимости от П.

Ответ: ________________________________________________________________________

Г) Значения двумерного массива размера П × п задаются с помощью вложенного операто­ра цикла в представленном фрагменте программы:

Алгоритмический

FOR i=l ТО n FOR k=l ТО n IF i>k THEN

END IF NEXT к NEXT n

For i:=l to n do for k:=l to n do if i>k then

Как будет зависеть от П сумма элементов массива А после выполнения алгоритма? На­пишите формулу вычисления суммы элементов массива А в зависимости от П.

Ответ:____________________________________

Б) поиск количества минимальных элементов в заданном целочисленном массиве из

5.11- Составте и запишите в виде программы на любом языке программирования алгоритм, выполняющий:

А) Решение уравнения α∣x∣ = где А и Ъ — исходные числовые данные;

В) Поиск наибольшего общего делителя двух натуральных чисел;

Г) поиск количества простых чисел в заданном целочисленном массиве из 50 элементов.

Важные рекомендации

Практика показывает, что наибольшие затруднения при выполнении заданий по теме «Алгоритмизация и программирование» вызывает составление программ и алгоритмов. Дан­ное пособие не является учебником программирования, поэтому мы приведем лишь общие рекомендации, не зависящие от языка, на котором записываются программы:

• Перед составлением программы надо тщательно проанализировать условие задания, уяс­нить постановку задачи, формат входных и выходных данных.

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

• Для написания программы нужно пользоваться тем языком программирования, которым хорошо владеешь и который подходит для решения поставленной задачи. Не следует спе­циально стремиться поразить экзаменаторов знанием экзотического или недавно появив­шегося языка программирования, поскольку дополнительные баллы за это не предусмот­рены. Хорошая программа должна быть максимально простой и эффективной. Не нужно специально использовать сложные приемы или редко применяемые конструкции языка программирования, если в этом нет необходимости.

• Текст программы нужно писать аккуратно и разборчиво даже на черновике, структури­рованно, выделяя отступами уровень вложенности операторов, не скупясь на коммента­рии и пояснения. Отсутствие комментариев и пояснений вовсе не является признаком высокой квалификации программиста, скорее наоборот.

• При написании текста программы следует контролировать соответствие типов перемен­ных и применяемых к ним операций, не допускать использования неопределенных (не­инициализированных) значений переменных.

• Если текст программы получается, на ваш взгляд, очень сложным и запутанным, приос­тановите на время ее написание и подумайте, в чем причина этой сложности, нельзя ли найти более простое и изящное решение задачи.

• После того как программа написана, необходимо выполнить ее тестирование, то есть про­верку правильности работы для различных исходных данных. Постарайтесь найти ошиб­ку в своей программе, помните, что цель тестирования — поиск ошибок, а не демонстра­ция правильности программы. Гораздо лучше, если ошибку найдете и исправите вы сами, а не экзаменаторы при проверке.

• При тестировании следует подбирать набор тестовых данных так, чтобы все операторы, все «ветки» программы выполнились на совокупности тестов. Особое внимание следует уделить особым случаям исходных данных, пограничным, критическим точкам. Пусть, например, написана программа сортировки массива. Особыми здесь будут случаи, когда входной мас­сив уже отсортирован в нужном порядке, когда он отсортирован в порядке обратном тре­буемому, а также когда все элементы сортируемого массива равны. Следует выявить такие критические точки и убедиться, что программа правильно работает на этих тестах.

• Если в задании приведен пример входных данных, его тоже надо включить в состав тес­тов, но он не должен быть единственным тестом!

• При тестировании следует еще раз сверить структуру исходных и выходных данных с за­данием, убедиться, что составленная программа точно соответствует условию задачи.

• При тестировании необходимо внимательно контролировать синтаксис программы (дол­жен быть явно указан тип каждой переменной, если этого требует язык программирова­ния, переменные должны использоваться в соответствии со своим типом, не должно быть неинициализированных и неиспользуемых переменных, должны быть правильно расстав­лены операторные скобки и разделители операторов и т. д.).

• Если после тестирования программы осталось достаточно времени, то можно поработать над повышением ее эффективности, подумать, нельзя ли упростить ее, уменьшить коли­чество циклов или требуемой для ее работы памяти. В случае внесения изменений в гото­вую программу процедуру тестирования придется повторить заново.

А) Найдите и исправьте ошибки в приведенной программе проверки принадлежности точки закрашенной области. Приведите пример, когда исходная программа работала неправильно.

Программа на Паскале

Программа на Бейсике

Источник: shtoryotirina.ru

(ТулГУ Теория алгоритмов и структуры данных) Программа для некоторого исполнителя представляет собой последовательность символов «-» и «*», заключенных в угловые скобки (<>). Символ «-» означает вычитание числа 3 из текущего результата вычислений, (Решение → 46450)

Программа для некоторого исполнителя представляет собой последовательность символов «-» и «*», заключенных в угловые скобки (<>). Символ «-» означает вычитание числа 3 из текущего результата вычислений, а «*» — умножение на 2. Выполнение программы производится слева направо.

Найдите результат работы исполнителя для исходного числа 10 и программы

 Описание Программа для некоторого исполнителя представляет собой последовательность символов «-» и «*», заключенных в угловые скобки (<>). Символ «-» означает вычитание числа 3 из текущего результата вычислений, а «*» - умножение на 2. Выполнение программы производится слева направо. Найдите результат работы исполнителя для исходного числа 10 и программы < - * * - * - - >Ответ: (ТулГУ Теория алгоритмов и структуры данных) Из указанных фраз выберите те, которые неверно отражают свойства алгоритма:(ТулГУ Теория алгоритмов и структуры данных) Программа для некоторого исполнителя представляет собой последовательность символов «-» и «*», заключенных в угловые скобки (<></p>
<p>). Символ «-» означает вычитание числа 3 из текущего результата вычислений,(ТулГУ Теория алгоритмов и структуры данных) Рассматривается множество целых чисел, принадлежащих числовому отрезку [4321; 8765], которые делятся на 7 и не делятся на 3, и при этом имеют последней цифрой в десятичной записи цифру 6. Найдите(ТулГУ Теория алгоритмов и структуры данных) У исполнителя Calc есть две команды, которым присвоены номера: 1. прибавь 1; 2. умножь на b (b — неизвестное натуральное число; b ≥ 2). Выполняя первую из них, Calc увеличивает число на экране на 1(ТулГУ Теория алгоритмов и структуры данных) Указать вид выражения C(x,n), которое можно получить при выводе рекуррентной формулы вида xn+1 = C(x,n) xn для вычисления ряда ln(x+1)/(x–1) = 2 ∑(n=0,∞) 1 / (2n+1) x2n+1, |x| > 1.(ТулГУ Теория вероятностей) 20% всех мужчин и 5% всех женщин – дальтоники.</p>
<p> Наугад выбранное лицо оказалось дальтоником. Вероятность того, что это мужчина, равна (число мужчин и женщин считается одинаковым):(ТулГУ Теория вероятностей) Вероятность выиграть в кости равна 1/6. Игрок делает 120 ставок.</p>
<p> Чтобы сосчитать вероятность того, что число выигрышей не будет меньше 15, можно воспользоваться:(ТулГУ Теоретическая механика) Что происходит с амплитудой вынужденных колебаний при отсутствии сопротивления среды в случае совпадения частот свободных и вынужденных колебаний (резонанс)? 💯 ТулГУ Теоретические основы электротехники (ответы на тест, октябрь 2022)(ТулГУ Теория алгоритмов и структуры данных) Алгоритм вычисления функции F(n) задан следующими соотношениями: F(n) = 1 при n = 1 F(n) = 2F(n – 1) если n чётно, F(n) = 5n + F(n – 1) если n нечётно. Чему равно значение функции F(64)?(ТулГУ Теория алгоритмов и структуры данных) В программе объявлены целочисленные переменные x, y, z, k. Каким будет значение переменной z после выполнения фрагмента программы: x := 25; y := 6; k := x div 2 + y * 2; if k < 10 then z := k + y else z (ТулГУ Теория алгоритмов и структуры данных) Дано вещественное число a. Найти такое наименьшее n, что 1 + 1/2 + 1/3 + . + 1/n >a. Решить задачу при a = 5.(ТулГУ Теория алгоритмов и структуры данных) Дано четырехзначное натуральное число n. В нем зачеркнули первую слева цифру и приписали ее в конце. Найти полученное число. был составлен алгоритм: 1. Ввести n 2. . 3. b := n mod 1000 4. с := (ТулГУ Теория алгоритмов и структуры данных) Даны целые числа a,b,c. Проверить истинность высказывания: «Существует треугольник со сторонами a,b,c». Какой из фрагментов кода правильно реализовывает эту задачу.

Библиотека Ирины Эланс, основана как общедоступная библиотека в интернете. Онлайн-библиотеке академических ресурсов от Ирины Эланс доверяют студенты со всей России.

Библиотека Ирины Эланс

Полное или частичное копирование материалов разрешается только с указанием активной ссылки на сайт:

Ирина Эланс открыла библиотеку в 2007 году.

Источник: student-files.ru

Основные понятия Тема «Алгоритмизация и программирование» наиболее…

Тема «Алгоритмизация и программирование» наиболее широко представлена в ЕГЭ по информатике. Для успешного выполнения заданий этой темы нужно знать и уметь использовать на практике основные алгоритмические конструкции:

• полное и неполное ветвление;

• цикл с предусловием;

• цикл с постусловием;

• цикл с заданным числом итераций;

• вспомогательный алгоритм (подпрограмма).

Читайте также:
Топ программ для ipad pro

Необходимо уметь составлять, анализировать и выполнять алгоритмы, используя различные формы записи:

• графический язык (блок-схемы);

• формальный язык (язык программирования).

Требуется также уметь использовать простые структуры данных — одномерные и двумерные массивы.

5.1. ■ Программа для некоторого арифметического устройства представляет собой последова­тельность символов «+» и « • ». Символ «+» означает прибавление единицы к текуще­му результату вычислений, « — » — умножение на 2. Выполнение программы произво­дится слева направо. Найдите результат работы устройства для заданного исходного числа и программы:

5.2. Составьте для устройства, описанного в предыдущем задании, программу, длиной не более 6 символов, преобразующую заданное исходное число в заданный результат:

А) из 0 получить 17.

Ответ:___________________________________________________________________________

Б) из 3 получить 30.

В) из -5 получить -30.

Г) из -2 получить 5.

Рассмотрим пример решения задачи с исполнителем РОБОТ

Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:

При выполнении этой команды РОБОТ перемещается на соответствующую клетку.

Команды проверки истинности условия на наличие стены у той клетки, где он находится:

Если РОБОТ начнет движение в сторону стены, то он разрушится.

А) Сколько клеток данного лабиринта соответствуют требованию, что, выполнив предложен­ную программу, РОБОТ остановится в той же клетке, с которой он начал движение?

НАЧАЛО

ПОКА справа свободно

ДЕЛАТЬ вправо

ПОКА снизу свободно

ДЕЛАТЬ вниз

ПОКА слева Cbo6oi^ho ДЕЛАТЬ влево

ПОКА сверху свободно

ДЕЛАТЬ вверх

В ответе запишите число — количество таких клеток, а далее, через запятые, их адреса (сначала идет латинская буква столбца, а затем цифра строки).

Например, нижний левый угол лабиринта имеет адрес Al.

Сначала определим свойства клеток, отвечающих требованию задачи.

Поскольку последний цикл программы РОБОТА

ДЕЛАТЬ вверх искомые клетки должны иметь границу сверху.

Таких клеток 14: вся верхняя горизонталь и клетки F7, G6 , B4, H4, Е2 и Hl.

Предпоследний цикл программы РОБОТА

Это значит, что в вертикали искомой клетки ниже нее обязательно должна быть клетка с левой границей, от которой «отскочил» РОБОТ перед тем, как пойти вверх.

Из ранее найденных клеток этому условию удовлетворяют 4 — A8, B8, B4, G6.

При этом В8 надо тоже отбросить, поскольку в ее вертикали на пути от клетки В2 стоит го­ризонтальная граница между В4 и В5.

Далее используем остальные фрагменты программы. Выполнив программу целиком для трех оставшихся клеток, получаем, что условию задачи удовлетворяют только две из них — А8 и В4.

5.3. Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:

При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответ­ственно: вверх Т, вниз 4 Команда

Выполняется, пока условие истинно, иначе происходит переход на следующую строку.

Если РОБОТ начнет движение в сторону стены, то он разрушится и программа прервется.

Нарисуйте путь РОБОТА в лабиринте, если он начал движение по программе из указанной клетки.

ПОКА вправо ПОКА вниз ПОКА влево ПОКА вверх КОНЕЦ

ПОКА влево

ПОКА вверх

ПОКА впра­во

ПОКА вниз КОНЕЦ

ПОКА влево

ПОКА вверх

ПОКА впра­во

ПОКА вниз

ПОКА влево

ПОКА впра­во

ПОКА вниз

ПОКА вверх

5.4. Для исполнителя РОБОТ, описанного в предыдущем задании, составить программу не более чем из семи строк (включая строки «НАЧАЛО» и «КОНЕЦ»), обеспечивающую нужное перемещение по заданному лабиринту

Для решения задач на определение значения переменной после выполнения фрагмента программы или блок-схемы удобно использовать таблицу значений переменных.

Пример. Дана блок-схема алгоритма. Требуется найти значение переменной С после завер­шения алгоритма.

Решение 1-й способ

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

Значение А

Значение С

А = 16 ?

Итак, ответ С= 4.

Внимательно проанализировав блок-схему можно заметить, что она иллюстрирует последо­вательное удвоение переменной а, изначально равной единице, до тех пор, пока она не дос­тигнет значения 16 = 24. Отсюда, С = Iog216 = 4 .

5.5. Впишите во фрагмент блок-схемы пропущенные инструкции, необходимые для пра­вильного решения поставленной задачи.

А) Найти минимальный элемент массива MИз 24 элементов.

Б) Найти сумму отрицательных элементов массива MИз 24 элементов.

В) Найти сумму положительных элементов массива MИз 22 элементов, имеющих чет­ные номера (нумерация элементов массива начинается с единицы).

Г) В массиве M 45 элементов. Найти, сколько подряд идущих элементов этого массива, начиная с первого, образуют возрастающую последовательность.

5.6. Составить и записать на естественном языке алгоритм, выполняющий:

А) решение уравнения Ах = Ь, где А и B — числовые исходные данные;

Минимальных элементов в заданном целочисленном массиве из

В) поиск наибольшего общего делителя двух натуральных чисел;

Г) поиск количества простых чисел в заданном целочисленном массиве из 50 элементов.

5-7. Составить и записать в виде блок-схемы алгоритм, выполняющий:

Б) поиск количества минимальных элементов в заданном целочисленном массиве из 50 элементов;

В) поиск наибольшего общего делителя двух натуральных чисел;

Г) поиск количества простых чисел в заданном целочисленном массиве из 50 элементов.

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

Однако для того чтобы понять эту закономерность, иногда требуется выполнить несколько итераций цикла «вручную», используя табличное представление массива.

Пример’. Значения двумерного массива размера П × п задаются с помощью вложенного опе­ратора цикла в представленном фрагменте программы.

Алгоритмический

Как будет зависеть от П сумма элементов массива А после выполнения алгоритма?

Изобразим двумерный массив в виде таблицы. На диагонали таблицы, там, где K = I,Будут находиться двойки. В остальных ячейках — нули.

X∖ k

Количество элементов диагонали — П, поэтому сумма элементов массива будет равна 2п.

5.8. Выполнить фрагмент программы и найти итоговые значения переменных:

Алгоритмический

B=(a MOD 1000) * 10 a=a∖1000+b

‘ и MOD — операции, вы­числяющие результат деле­ния нацело первого аргу­мента на второй и остаток от деления соответственно

B:=(a mod 1000) * 10;

B:=mod(a, 1000) * 10 a∙.=div (а, 1000) +b

I div и mod — функции, вы­числяющие результат деле­ния нацело первого аргу­мента на второй и остаток от деления соответственно|

Алгоритмический

B=(a MOD 10) * 1000

Читайте также:
Программа мои финансы отзывы

B: = (a mod 10) * 1000;

Алгоритмический

A=(7-5) * 4 b=(a MOD 3)+15 a=(b∖4)+3

B:=mod(a,3)+15 a:=div(b, 4)+3

Алгоритмический

A=(6+2) * 4 b=(a MOD 5)+1 a=(b∖6) -2

B:=(a mod 5)+1; а := (b div 6)-2

А:=(6+2) * 4 b:=mod (а, 5) +1 a :=div(Ь,6)-2

А) Дан фрагмент программы, обрабатывающей массив А из 10 элементов:

Алгоритмический

A(i)=i NEXT I j = 1 FOR i = 1 ТО n-1 IF A(i) 5 then

Нц для i от 1 до n

IF i>5 THEN s=s+A(i)

Чему будет равно значение переменной SПосле выполнения данного алгоритма?

В) Дан фрагмент программы, обрабатывающей массив А из П элементов:

Алгоритмический

Как будет зависеть от П сумма элементов массива А после выполнения алгоритма? На­пишите формулу вычисления суммы элементов массива А, в зависимости от п.

Ответ: ___________________________________________________________________________

Б) Значения двумерного массива размера П × п задаются с помощью вложенного операто­ра цикла в представленном фрагменте программы:

Алгоритмический

FOR i=l ТО п FOR k=l ТО п IF i=k THEN

For i:=l to n do for k:=l to n do if i=k then

Как будет зависеть от П сумма элементов массива А после выполнения алгоритма? На­пишите формулу вычисления суммы элементов массива А в зависимости от п.

Ответ: ___________________________________________________________________________

В) Значения двумерного массива размера П × п задаются с помощью вложенного операто­ра цикла в представленном фрагменте программы:

Алгоритмический

FOR i=l ТО n FOR k=l ТО n IF i>k THEN

For i:=l to n do for k:=l to n do if i>k then

Как будет зависеть от П сумма элементов массива А после выполнения алгоритма? На­пишите формулу вычисления суммы элементов массива А в зависимости от п.

Ответ:___________________________________________________________________________

Г) Значения двумерного массива размера П х П задаются с помощью вложенного операто­ра цикла в представленном фрагменте программы:

Алгоритмический

FOR i=l ТО n FOR k=l ТО n IF i>k THEN

For i:=l to n do for k:=l to n do if i>k then

Как будет зависеть от П сумма элементов массива А после выполнения алгоритма? На­пишите формулу вычисления суммы элементов массива А в зависимости от п.

Ответ:___________________________________________________________________________

5.11. Составить и записать в виде программы на любом языке программирования алгоритм, выполняющий:

Решение уравнения α∣x∣ = Ь, где A Mb — исходные числовые данные;

Поиск количества минимальных элементов в заданном целочисленном массиве из 50 элементов;

Поиск наибольшего общего делителя двух натуральных чисел;

Г) поиск количества простых чисел в заданном целочисленном массиве из 50 элементов.

Важные рекомендации

Практика показывает, что наибольшие затруднения при выполнении заданий по теме «Алгоритмизация и программирование» вызывает составление программ и алгоритмов (за­дачи Cl, С2 и С4 демоверсии ЕГЭ 2009 г.). Данное пособие не является учебником програм­мирования, поэтому мы приведем лишь общие рекомендации, не зависящие от языка, на котором записываются программы:

• Перед составлением программы надо тщательно проанализировать условие задания, уяс­нить постановку задачи, формат входных и выходных данных.

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

• Для написания программы нужно пользоваться тем языком программирования, которым хорошо владеешь и который подходит для решения поставленной задачи. Не следует спе­циально стремиться поразить экзаменаторов знанием экзотического или недавно поя­вившегося языка программирования, поскольку дополнительные баллы за это не преду­смотрены. Хорошая программа должна быть максимально простой и эффективной. Не нужно специально использовать сложные приемы или редко применяемые конструкции языка программирования, если в этом нет необходимости.

• Текст программы нужно писать аккуратно и разборчиво даже на черновике, структури­ровано, выделяя отступами уровень вложенности операторов, не скупясь на комментарии и пояснения. Отсутствие комментариев и пояснений вовсе не является признаком высо­кой квалификации программиста, скорее наоборот.

• При написании текста программы следует контролировать соответствие типов перемен­ных и применяемых к ним операций, не допускать использования неопределенных (не­инициализированных) значений переменных.

• Если текст программы получается, на ваш взгляд, очень сложным и запутанным, приос­тановите на время ее написание и подумайте, в чем причина этой сложности, нельзя ли найти более простое и изящное решение задачи.

• После того как программа написана, необходимо выполнить ее тестирование, то есть проверку правильности работы для различных исходных данных. Постарайтесь найти ошибку в своей программе, помните, что цель тестирования — поиск ошибок, а не демон­страция правильности программы. Гораздо лучше, если ошибку найдете и исправите вы сами, а не экзаменаторы при проверке.

• При тестировании следует подбирать набор тестовых данных так, чтобы все операторы, все «ветки» программы выполнились на совокупности тестов. Особое внимание следует уделить особым случаям исходных данных, пограничным, критическим точкам. Пусть, например, написана программа сортировки массива. Особыми здесь будут случаи, когда входной мас­сив уже отсортирован в нужном порядке, когда он отсортирован в порядке обратном тре­буемому, а также когда все элементы сортируемого массива равны. Следует выявить такие критические точки и убедиться, что программа правильно работает на этих тестах.

• Если в задании приведен пример входных данных, его тоже надо включить в состав тес­тов, но он не должен быть единственным тестом!

• При тестировании следует еще раз сверить структуру исходных и выходных данных с за­данием, убедиться, что составленная программа точно соответствует условию задачи.

• При тестировании необходимо внимательно контролировать синтаксис программы (дол­жен быть явно указан тип каждой переменной, если этого требует язык программирова­ния, переменные должны использоваться в соответствии со своим типом, не должно быть неинициализированных и неиспользуемых переменных, должны быть правильно расстав­лены операторные скобки и разделители операторов и т. д.)

• Если после тестирования программы осталось достаточно времени, то можно поработать над повышением ее эффективности, подумать, нельзя ли упростить ее, уменьшить коли­чество циклов или требуемой для ее работы памяти. В случае внесения изменений в гото­вую программу процедуру тестирования придется повторить заново.

Найдите и исправьте ошибки в приведенной программе проверки принадлежности точки закрашенной области. Приведите пример, когда исходная программа работала

Программа на Паскале

Программа на Бейсике

Источник: stomart-clinics.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru