РЕШЕНИЕ ЗАДАЧ по теме: МАССИВЫ Выполнила учитель информатики МБОУ «СОШ с. Грачев Куст Перелюбского муниципального района Саратовской области» Подстречная.

Презентация:



Advertisements
Похожие презентации
Тематический блок «Программирование» ЕГЭ-2015 Задания 19, 20, 21, 25.
Advertisements

Задача. С клавиатуры вводится n чисел (числа могут повторяться). Необходимо подсчитать количество чисел равных наименьшему числу.
К.Ю. Поляков, Е.А. Ерёмин, Программирование на языке Паскаль § 62. МассивыМассивы.
Одномерные массивы целых чисел. 9 класс
Решение задач с использованием одномерных массивов.
Классная работа. Работа с индексами элементов массива.
Подведение итогов г. Н.Новгород школа 58. набор переменных одного типа, имеющее одно общее имя. количество элементов в массиве. число индексов, которые.
ЕГЭ 2011 Информатика и ИКТ Консультация 3 18 марта.
Поиск максимального и минимального элемента линейного массива на языке Turbo Pascal. Program poisk; Const n=10; Type mass=array[1..n] of integer; Var a:mass;
Массивы бывают и а также в Турбо Паскале они числовые числовые 1.Определение массивов 2.Этапы решения задач на массивы 3.Задачи на обработку массивов АвторАвтор.
3. Дана прямоугольная матрица, элементами которой являются целые числа. Поменять местами ее строки следующим образом: первую строку с последней, вторую.
Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0 до 100 – баллы учащихся выпускного класса за итоговый тест.
Одномерные массивы. Понятие массива При решении задач с использо- ванием большого количества однотипных упорядоченных данных, удобно хранить эти данные.
МассивМассив представляет собой совокупность данных одного типа с общим для всех элементов именем. Массив относится к структурированным типам данных (упорядоченная.
Р ЕШЕНИЕ ЗАДАНИЙ С2 Одномерные массивы. 1, 2 …5 номер элемента А имя массива Значения Индексы А[3]=9 Имя массива Индекс Значение Теория по.
Алгоритмизация и программирование. Практическая работа в Pascal Задача 1.
Работа с одномерными массивами Урок информатики 9 кл.
ЕГЭ 2012 Информатика и ИКТ Консультация 3. Пример.
К. Поляков, Программирование на языке Паскаль Часть II Тема: Поиск максимального элемента массива.
Программирование на языке Паскаль. Часть II К. Поляков, Сумма выбранных элементов 1 Задача: заполнить массив случайными числами в интервале [-10,10]
Транксрипт:

РЕШЕНИЕ ЗАДАЧ по теме: МАССИВЫ Выполнила учитель информатики МБОУ «СОШ с. Грачев Куст Перелюбского муниципального района Саратовской области» Подстречная Лариса Дмитриевна уч. год

Задача 1 Заполните массив элементами арифметической прогрессии. Её первый элемент и разность вводятся с клавиатуры

Решение: program z1; const n=10; var a:array [1..n] of integer; k,d: integer; begin a[1]:=5; d:=7; for k:=2 to n do a[k]:=a[1]+d*(k-1); for k:=1 to n do write(a[k]:3); end.

Задача 2 Заполните массив степенями числа 2 (от до ).

Решение: program pr1; const n=20; var a:array [1..n] of real; i:integer; begin for i:=1 to n do a[i]:=power(2,i); for i:=1 to n do writeln('a[i]=',a[i]); readln; end.

Числа Фибоначчи

Задача 3 Заполните массив первыми числами Фибоначчи. Решение: program z3; const n=10; var f:array [1..10] of integer; k:integer; begin f[1]:=1; f[2]:=1; for k:=3 to n do f[k]:=f[k-2]+f[k-1]; for k:=1 to n do write(f[k]:3); end.

Задача 4 Заполните массив из N элементов случайными целыми числами в диапазоне 1..n так, чтобы в массив обязательно вошли все числа от 1 до n (постройте случайную перестановку).

Решение: program z4; const n=5; var a:array[1..n]of integer; i,b,k,j,x:integer; begin randomize; writeln('Исходный массив:'); for i:=1 to n do begin a[i]:=random(50); write(a[i],' '); end; writeln; b:=a[1];{запомним первый, он будет меняться} k:=0;{количество перестановок} for i:=1 to n do if a[i]>b then{если больше первого} begin k:=k+1;{считаем} x:=a[i];{запоминаем его} for j:=i downto k+1 do {сдвигаем на него еще не переставленные элементы в начале} a[j]:=a[j-1]; a[k]:=x;{вставляем его на место 1,2,3...} end; writeln('Перестановка:'); for i:=1 to n do write(a[i],' '); readln end.

Задача 5 Постройте случайную перестановку чисел от 1 до n так, чтобы первое число обязательно было равно 5 (n>=5).

Решение: program z5; const n=5; var a:array[1..n]of integer; i,b,k,j,x:integer; begin randomize; writeln('Исходный массив:'); for i:=1 to n do begin a[i]:=random(50); write(a[i],' '); end; writeln; b:=a[1]; k:=0; for i:=1 to n do if a[i]>b then begin k:=k+1; x:=a[i]; for j:=i downto k+1 do a[j]:=a[j-1]; a[k]:=x; end; i:=1; if a[i]=5 then writeln('первый элемент=',a[i]); writeln('Перестановка:'); for i:=1 to n do write(a[i],' '); readln end.

Задача 6 Заполните массив случайными числами в диапазоне и подсчитайте отдельно число элементов массива с четными и нечетными значениями.

Решение: program z6; const n=10; var a:array[1..n] of integer; i,s1,s2:integer; begin randomize; for i:=1 to n do begin a[i]:=random(81)+20; write(a[i]:5); end; writeln; s1:=0; for i:=1 to n do begin if a[i] mod 2=0 then begin s1:=s1+1; end; writeln('количество четных элементов=',s1:5); end; s2:=0; for i:=1 to n do begin if a[i] mod 2 <>0 then begin s2:=s2+1; end; writeln('количество нечетных элементов=',s2:5); end; readln; end.

Задача 7 Заполните массив случайными числами в диапазоне и подсчитайте число элементов, у которых вторая с конца цифра – четная.

Решение: program z7; const n=10; var a:array[1..n] of integer; i,s:integer; begin randomize; for i:=1 to n do begin a[i]:=random(1001)+1000; write(a[i]:5); end; writeln; s:=0; for i:=1 to n do begin if (((a[i] mod 1000) mod 100) div 10) mod 2=0 then begin s:=s+1; end; writeln('количество элементов=',s:5); end; readln; end.

Задача 8 Заполните массив случайными числами в диапазоне и подсчитайте отдельно среднее значение всех элементов, меньших 50, и среднее значение всех элементов, которые больше или равны 50.

Решение: program z8; const n=5; var a:array[1..n] of integer; i,s1,s2,k1,k2:integer; sr:real; begin randomize; for i:=1 to n do begin a[i]:=random(101); write(a[i]:5); end; writeln; k1:=0;s1:=0; for i:=1 to n do begin if a[i]<50 then begin s1:=s1+a[i]; k1:=k1+1; end; sr:=s1/k1; writeln('sr=',sr); writeln; k2:=0; for i:=1 to n do begin if a[i]>50 then begin s2:=s2+a[i]; k2:=k2+1; end; sr:=s2/k2; writeln('sr=',sr); readln; end.

Задача С2 (ЕГЭ 2013) Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0 до 100. Опишите на русском языке или на одном из языков программирования алгоритм, позволяющий найти и вывести произведение элементов массива, которые имеют нечётное значение и делятся на 3. Гарантируется, что в исходном массиве есть хотя бы один элемент, значение которого нечётно и кратно 3. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них. Исходные данные всегда подобраны так, что результат произведения не выходит за пределы объявленных типов данных.

В качестве ответа Вам необходимо привести фрагмент программы (или описание алгоритма на естественном языке), который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например Free Pascal 2.4) или в виде блок-схемы. В этом случае Вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии (например, в образце, записанном на естественном языке).

Решение: Решение: Используем язык программирования Pascal ABC. Net program c2; const N=30; var a: array [1..N] of longint; i, j, p: longint; begin randomize; for i := 1 to N do begin a[i]:=random(100); write(a[i]:5); end; writeln; p:=1; for i:=1 to N do if (a[i] mod 2<>0) and (a[i] mod 3=0) then begin p:=p*a[i]; end; writeln('произведение элементов массива нечетных и кратных 3 равно:',p:5); writeln; readln; end.

Источники: Рисунок для фона К.Ю. Поляков, Е.А. Еремин Информатика 10 класс (углубленный уровень, 2 часть) БИНОМ, Лаборатория знаний, 2013 Г.Г. Рапаков, С.Ю. Ржеуцкая Turbo Pascal для студентов и школьников, изд-во «БХВ- Петербург», 2002 ФИПИ 2013 г.