Как составить программу по информатике для 9 класса

Повторение. 

Видео уроки на повторение

Решение математических выражений в Pascal. 

Задача (урок 9к2-29.11.2021, 9к1-30.11.2021)
Составить программу для вычисления значение выражения  






где x целое число, вводимое с клавиатуры.
блок-схема

текст программы:
var x:integer;
    y:real;
begin
writeln(‘введите целое число’);
readln(x);
y:=(5*x+sqr(x))/8;
writeln (‘при x=’,x,’ y =’,y);
end.

Одномерный массив.

Упорядоченное множество однотипных элементов, расположенное в строке (или столбце).
В общем виде:
а1, а2, а3, …, аn

Описание одномерного массива
var mas: array[1..5] of integer;
Задается массив с именем mas, количество элементов 5, элементы целые числа
имена элементов — mas[1], mas[2] …

Формирование массива. Ввод элементов массива с клавиатуры.


Задача  (урок 9к2-29.11.2021, 9к1-30.11.2021)
Составьте программу, задающую одномерный массив целых чисел из 6 элементов, вводимых с клавиатуры, и оформите вывод элементов на экран в строчку.

текст программы
var m: array [1..6] of integer;
    i: integer;
begin
writeln(‘ввод элементов’);
for i:=1 to 6 do readln(m[i]);
for i:=1 to 6 do write(m[i],’ ‘);
end.

Формирование массива с помощью функции случайных чисел random. 

Задача  (урок 9к2-06.12.2021)
Составьте программу, задающую одномерный массив размерность 10, состоящий из случайных чисел из промежутка  от 5 до 22. Оформите вывод элементов на экран в строчку.

Пояснение.
Обратите внимание, что случайные числа задаются функцией random(x). Для того чтобы задать случайные числа из промежутка от a до b есть формула x:=random(b-a+1)+a, в нашем случае
x:=random(18)+5

текст программы

var m: array [1..10] of integer;

    i: integer;

begin

for i:=1 to 10 do

begin

m[i]:= random(18)+5;

write(m[i],’ ‘);

end;

end.

Задача  (урок 9к2-20.12.2021, 9к1-21.12.2021)

Составьте программу, которая в одномерном массиве размерностью 12 (элементы случайные числа из промежутка  от 1 до 9) подсчитывает количество чётных элементов. Оформите вывод элементов на экран в строчку, вывод количества чётных на следующей строке.

Пояснение Обратите внимание, что условием чётности элемента будем выводить через функцию mod (целочисленный остаток от деления). Четные числа делятся на 2 с нулевым остатком: if w[i] mod 2=0 then k:=k+1



текст программы

var m:array[1..12] of integer;

    i,k:integer;

begin

k:=0;

for i:=1 to 12 do

begin

m[i]:=random(9)+1;

write(m[i],’ ‘);

if m[i] mod 2=0 then k:=k+1;

end;

writeln;

writeln(‘Количество четных — ‘,k);

end.

Задача  (урок 9к2-20.12.2021, 9к1-21.12.2021)

Составьте программу, которая в одномерном массиве размерностью 8 (элементы массива случайные числа из промежутка от 15 до 100) находит максимальный элемент.  Оформите вывод элементов на экран в строчку, максимальный на следующей строке.

Пояснение
Обратите внимание, что это задание аналогично задачам на поиск максимального из вводимых с клавиатуры чисел (материал 8 класса), но в данном случае при составление программы используется массив.


текст программы

var m:array[1..8] of integer;

    i,max:integer;

begin

max:=14;

for i:=1 to 8 do

begin

m[i]:=random(86)+15;

write(m[i],’ ‘);

if max<m[i] then max:=m[i];

end;

writeln;

writeln(‘Максимальный — ‘,max);

end.

Задача  (урок 9к2-20.12.2021, 9к1-21.12.2021)

Составьте программу, которая в одномерном массиве размерностью 12 (элементы массива случайные числа из промежутка от 0 до 6) находит количество элементов равных 3. Оформите вывод элементов на экран в строчку, количество искомых элементов на следующей строке.

Пояснение
Обратите внимание, что переменная k — счетчик, поэтому начальное значение переменной обнуляем. Условие для подсчета 3 if w[i]=3 then k:=k+1, т.е. если элемент равен 3, то k увеличивается на 1.


текст программы

var w:array[1..12] of integer;

    i,k:integer;

begin

k:=0;

for i:=1 to 12 do

begin

w[i]:=random(7);

write(w[i],’ ‘);

if w[i]=3 then k:=k+1;

end;

writeln;

writeln(‘Количество троек ‘,k);

end.


Задача  (урок 9к2-10.01.2022, 9к1-11.01.2022)

Составьте программу, которая в одномерном массиве размерностью 7 (элементы массива случайные числа из промежутка от 1 до 8) подсчитывает сумму элементов меньше или равных 3. Оформите вывод элементов на экран в строчку, количество искомых элементов на следующей строке.

Пояснение
Обратите внимание, что переменная s — накопитель суммы, поэтому начальное значение переменной обнуляем. Условие для подсчета 3 if w[i]<=3 then s:=s+w[i], т.е. если элемент меньше или равен 3, то s увеличивается на значение элемента.

текст программы

var w:array[1..7] of integer;

    i,s:integer;

begin

s:=0;

for i:=1 to 7 do

begin

w[i]:=random(8)+1;

write(w[i],’ ‘);

if w[i]<=3 then s:=s+w[i];

end;

writeln;

writeln(‘Сумма элементов <=3 ‘,s);

end.

Задача  (урок 9к2-17.01.2022, 9к1-18.01.2022)

Составьте программу, которая в одномерном массива размерность 20, состоящим из случайных чисел из промежутка  от 1 до 100, находится наибольший элемент оканчивающийся на цифру 2. Оформите вывод элементов на экран в строчку.

Пояснение 
Обратите внимание, что в данной задаче используем сложное условие. Проверка, что число оканчивается на цифру 2: m[i] mod 10 =2 и сравнение с максимальным max<m[i].

max может не поменяется, т.е. в данной последовательности не будет чисел, оканчивающихся на 2, и после цикла нужно поставить проверку на значение max.

текст программы

var m:array[1..20] of integer;

    i,max:integer;

begin

max:=0;

for i:=1 to 20 do

begin

m[i]:=random(100)+1;

write(m[i],’ ‘);

if (m[i]mod 10=2)and(max<m[i]) then max:=m[i];

end;

writeln;

if max=0 then writeln(‘Среди данных чисел, нет оканчивающегося на 2’)

else writeln(‘Максимальный, оканчивающийся на 2 ‘,max);

end.

Оператор цикла while (цикл ПОКА)

while <условие> do оператор;


Выполняет действие или действия пока истинно условие. После каждого прохождения тела цикла, условие проверяется и если условие ложно, осуществляется выход из цикла. 
Если условие истинно всегда, то происходит зацикливание. Чтобы прервать зациклившуюся программу, следует использовать комбинацию клавиш Ctrl-F2.
Условие — логическое выражение, записанное с помощью логических операторов сравнения.


Задача  (урок 9к2-31.01.2022, 9к1-01.02.2022)

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

текст программы

var x,max:integer;
begin
writeln(‘Введите целое число’);
readln(x);
max:=0;
while x<>0  do 
begin
if max<x then max:=x;
readln(x);
end;
writeln(‘max=’,max);
end.


Задача (урок )

Составьте программу, которая для любого вводимого с клавиатуры целого числа вычисляет и выводит на экран количество единиц, десятков, сотен и т.д. (например, для числа 7865 — вывод 5 — 6 — 8 — 7)

Пояснение 
Обратите внимание, что в данной программе удобно использовать оператор цикла while (пока), с помощью функции mod 10 находим последнюю цифру числа 
a:= x mod 10 и выводим ее на экран, затем убираем ее с помощью функции div 10  x:=x div 10 и работаем с новым числом и т.д. пока x не станет 0.

текст программы

var x,a:integer;
begin
readln(x);
writeln(‘Результат’);
while x<>0 do
begin
a:= x mod 10;
write(a,’ — ‘);
x:=x div 10;
end;
end.

Задача (урок )
В целочисленных массивах a и b содержатся длины катетов десяти прямоугольных треугольников
(
a[i] – длинна первого катета, b[i] – длинна второго катета i-того треугольника). Найдите
треугольник с наибольшей площадью. Выведите его номер, длины катетов и площадь.
Предусмотрите случай, когда таких треугольников несколько.

текст программы

var a:array[1..10] of integer;
    b:array[1..10] of integer;

    s:array[1//10] jf real;
    i,n,k:integer;sm:real;
begin
sm:=0;
n:=0;
for i:=1 to 10 do
begin
a[i]:=random(10)+1;
b[i]:=random(10)+1;
write(i,’:’,a[i],’,’,b[i],’ ‘);
s[i]:=1/2*a[i]*b[i];
if sm<s[i] then begin sm:=s[i];n:=i;end;
end;

for i:=1 to 10 
if s[i]=sm then k:=k+1;
writeln;
writeln(‘наибольшая площадь=’,sm,’ катеты ‘,a[n],’,’,b[n]);

writeln(‘ количество таких треугольников ‘,k);
end.


Сортировка одномерного массива

Задача (урок )
Составить программу, которая сортирует элементы одномерного массива размерностью 7 по возрастанию (элементы массивы случайные числа от 10 до 60).
текст программы
var mas:array[1..7] of integer;
    i,j,a:integer;
begin
for i:=1 to 7 do
begin
mas[i]:=random(51)+10;
write(mas[i],’ ‘);
end;
for j:=1 to 6 do
for i:=1 to 6 do
if mas[i]>mas[i+1] then
       begin
       a:=mas[i];
       mas[i]:=mas[i+1];
       mas[i+1]:=a;
       end;
writeln;
write (‘Отсортированный массив  ‘);
for i:=1 to 7 do write(mas[i],’ ‘);
end.


Задача (урок )
Составить программу, которая в данном массиве: m[1]:=4; m[2]:=8; m[3]:=7; m[4]:=2; m[5]:=1;m[6]:=8; m[7]:=1; m[8]:=5; m[9]:=6; m[10]:=8;
находит максимальный элемент (элементы) и заменяет его (их) на 0.
текст программы
var m:array[1..10] of integer;
    i,max,k:integer;
begin
m[1]:=4; m[2]:=8; m[3]:=7; m[4]:=2; m[5]:=1;
m[6]:=8; m[7]:=1; m[8]:=5; m[9]:=6; m[10]:=8;
max:=m[1];


for i:=1 to 10 do
begin
write(m[i],’ ‘);
if m[i]>max then max:=m[i];
end;
writeln;
writeln(‘max=’,max);


for i:=1 to 10 do
if m[i]=max then m[i]:=0;


writeln(‘результат’);
for i:=1 to 10 do
write(m[i],’ ‘);
end.



Повторение. Работа со строковыми функциями copy и length. 

Задача  (урок )

Составьте программу, которая печатает на экране вводимое с клавиатуры словосочетание из двух слов в обратном порядке (пример ввод: доброе утро; вывод: утро доброе).

Пояснение 
Для решения данной задачи воспользуемся оператором цикла while. Вырезая из введенной строки s последовательно по одной букве с помощью функции copy, сравниваем эти символы с пробелом и пока не пробел собираем их в строку s1. Это будет второе слово в новой фразе. Первое вырезаем с символа n+1, количество символов — длина фразы — n.

текст программы
uses crt;
var s,s1:string;
    n,d:integer;
begin
writeln(‘Введите фразу из 2-х слов, между словами 1 пробел’);
readln(s);
d:=length(s);
n:=1;
while copy(s,n,1)<>’ ‘ do
begin
s1:=s1+copy(s,n,1);
n:=n+1;
end;
writeln(copy(s,n+1,d-n)+’ ‘+s1);
end.

Как написать программу
в системе программирования PascalABC Net  
для  выполнения задания 15.2 ОГЭ

Уважаемый 9-классник, сдающий в 2020 г. ОГЭ по информатике,  если ты решил для себя, что программирование прошло мимо тебя и не планируешь даже пытаться написать программу, то еще не всё  потеряно.

Смею надеяться, что прочитав  последующее и потренировавшись как следует, ты научишься  и напишешь  программу, и получишь свои 2 балла за неё.

1. Рассмотрим одну из задач.

Напишите программу, которая в последовательности натуральных чисел определяет сумму двузначных чисел, оканчивающихся на 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 4. Количество чисел не превышает 1000. Введённые числа не превышают
30 000. Программа должна вывести одно число — сумму чисел, оканчивающихся на 4.

Из условия понятно, что каждое число последовательности (обозначим его а) должно быть введено. Для этого в программе должен быть оператор ввода а:  Readln(a); Как вариант, организовать ввод а в программе можно и так: Write (‘Введите число:   ‘);  Readln(a);

Далее нужно проверить, удовлетворяет ли введенное число необходимым условиям (число двузначное и оканчивается на цифру 4).  Если условия выполняются, то такое число добавляем к сумме (обозначим сумму S) с помощью оператора S := S + a. Проверку выполнения условий осуществляет условный оператор IF следующим образом:  

IF ( a >9)  AND  ( a<100)  AND  ( a  mod 10 = 4 )  THEN  S := S + a;

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

Пояснение к условию a  mod 10 = 4: с помощью операции mod определяется целый остаток от деления а на 10. Аналогично можно проверить, оканчивается ли число а на 1, 2, 3, …, 9.

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

Write (‘Введите число:   ‘);  Readln(a);

IF ( a >9)  AND  ( a<100)  AND  ( a  mod 10 = 4 )  THEN  S := S + a;

С помощью оператора цикла с заданным числом повторений  (оператор FOR) можно организовать ввод и обработку всех чисел последовательности, количество которых программа получает на вход. Это означает, что количество чисел (обозначим N) должно быть введено с помощью оператора ввода Readln( N ); Как вариант, организовать ввод N в программе можно и так:  Write (‘Введите количество чисел:   ‘);  Readln(N);  Это нужно сделать в самом начале программы (после слова BEGIN).

Оператор цикла FOR организует повторение фрагмента программы (ввод и обработка одного числа) с помощью переменной цикла (обозначим её i).  Первоначально i  принимает значение 1 и фрагмент выполняется первый раз, затем значение i увеличивается на 1 и для i=2 фрагмент выполняется второй раз, и т.д. Когда i примет значение N фрагмент выполнится последний раз.

FOR  i := 1   to  N   do

   begin  

        Write (‘Введите число:   ‘);  Readln(a);

        IF ( a >9)  AND  ( a<100)  AND  ( a  mod 10 = 4 )  THEN  S := S + a;

    end;

Осталось добавить, что для определения правильного результата суммы «подходящих» чисел, начальное значение переменной S должно быть обнулено: S := 0; Этот оператор должен находиться в программе перед оператором цикла.

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

Program P15_2;

Var  N, a, S, i : integer;

BEGIN

   Write (‘Введите количество чисел:   ‘);     Readln(N);  

   S := 0;

   FOR  i := 1   to  N   do

      begin  

          Write (‘Введите число:   ‘);  Readln(a);

           IF ( a >9)  AND  ( a<100)  AND  ( a  mod 10 = 4 )  THEN  S := S + a;

      end;

   Writeln (‘Сумма чисел, двузначных и оканчивающихся на 4, =  ‘, S);

END.

В условие задачи есть еще некоторые данные, а именно:  «Количество чисел не превышает 1000. Введённые числа (натуральные) не превышают 30 000″. Это означает, что в программе можно выполнять проверку на допустимость вводимых данных: N <= 1000  и 0 < a <= 30000.  Но можно и не выполнять, так как критерии оценивания программ не предполагают снижения баллов за отсутствие таковой проверки.

2. Вот еще похожая задача из Демо-версии 2020г.

Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 4, но не кратных 7. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 4 и не кратное 7. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число: количество чисел, кратных 4, но не кратных 7.

Составление алгоритма для решения этой задачи мало чем отличается от предыдущей. Обратите внимание на различия: они подчеркнуты.

Program PP15_2;

Var  N, a, K, i : integer;      

BEGIN

   Write (‘Введите количество чисел:   ‘);     Readln(N);  

   K := 0;

   FOR  i := 1   to  N   do

      begin  

          Write (‘Введите число:   ‘);  Readln(a);

           IF  ( a  mod 4 = 0 )  AND  ( a  mod 7 <> 0 )  THEN  K := K + 1;

      end;

   Writeln (‘Количество чисел, кратных 4,  но не кратных 7=  ‘, K);

END.

3. Рассмотрим еще одну задачу, в которой количество введенных чисел неизвестно. В этом случае надо использовать оператор цикла с условием (например, REPEAT … UNTIL <условие>).

Напишите программу, которая в последовательности натуральных чисел определяет количество всех чётных чисел, кратных 9. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 — признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число: количество всех чётных чисел, кратных 9.

Program PPP15_2;

Var  a, K : integer;

BEGIN

    K := 0;

   REPEAT

          Write (‘Введите число:   ‘);  Readln(a);

           IF  ( a  mod 2 = 0 )  AND  ( a  mod  9 =  0 )  THEN  K := K + 1;

   UNTIL  a = 0;  

   Writeln (‘Количество четных чисел, кратных 9, =  ‘, K — 1);

END.

Здесь есть «подводный камень»: когда мы вводим для а значение 0. Ноль удовлетворяет условиям  (0 mod 2 = 0 и 0 mod 9 =0), и количество чисел К увеличивается лишний раз на 1. Решить эту проблему можно, если, например, вывести в результате К – 1.

4. Может встретиться задача определения максимального (MAX) или минимального (MIN) значения а, удовлетворяющего некоторым условиям. Например.

Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 3 и оканчивающееся на 7. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 — признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести: максимальное число, кратное 3 и оканчивающееся на 7.

До обработки каждого из чисел в цикле (REPEAT в данном случае) переменной  MAX необходимо присвоить начальное значение. Оно должно быть таким, чтобы первое же вводимое число а оказалось больше MAX. Например, MAX := 0; Натуральные числа начинаются с 1, и первое же наше а окажется >MAX. Можно также использовать MAX := -10;  или MAX := — 1;

Если число а окажется >MAX  и для него выполняются необходимые условия, такое а нужно сохранить в переменной МАХ, т.е. MAX := a; 
 IF (a > MAX) and (a mod 3 = 0) and (a mod 10 = 7)  THEN MAX := a;

Program PPPP15_2;

Var  a, MAX : integer;

BEGIN

    MAX := 0;

   REPEAT

          Write (‘Введите число:   ‘);  Readln(a);

           IF (a > MAX) and (a mod 3 = 0) and (a mod 10 = 7)  THEN MAX := a;

   UNTIL  a = 0;  

   Writeln (‘Максимальное число, кратное 3 и  оканчивающееся на 7, =  ‘,  МАХ);

END.

При поиске минимального числа а, удовлетворяющего условиям задачи 4, начальное значение MIN должно быть, наоборот, таким, чтобы первое же а оказалось меньше. Например, MIN := 30001;  Оператор IF будет следующим:

           IF (a < MIN) and (a mod 3 = 0) and (a mod 10 = 7)  THEN MIN := a;

На этих страницах, конечно, не рассмотрены все возможные варианты формулировок задач. Но с этого можно начинать.

Задание 15.2 в ОГЭ по информатике на составление программы. Как правило, это программы содержащие и циклы и условия. В этой статье постараемся разобраться как решать такие задачи.
Условный оператор присутствует практически в каждой задаче. В решении задач используют два вида циклов: цикл с параметром и цикл с предусловием.

Паскаль ОГЭ как решать?

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

  • Если в задаче сказано: программа получает на вход количество чисел, то следует использовать цикл с параметром.
  • Если в задаче сказано: количество введённых чисел неизвестно, а последовательность чисел заканчивается 0 , то следует использовать цикл с предусловием.

Разберем несколько вариантов задач, с которыми придется столкнуться на экзамене по информатике в 9 классе.

Пример 1. Напишите программу, которая в последовательности натуральных чисел определяет количество всех чётных чисел, кратных 5. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 — признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число: количество всех чётных чисел, кратных 5.

Решение:

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

  1. определение четности числа: a mod 2 =0
  2. определение кратности 5: a mod 5 =0

Причём эти условия должны выполняться одновременно. А значит, нужно составить из них одно сложное условие, используя логическую операцию — умножение. Вот так:

(a mod 2 =0) and (a mod 5 =0)

Поясним обозначения переменных:

  • k — количество чисел, удовлетворяющих условиям задачи,
  • a — число, которое получает программа на входе

Теперь, для большего понимания, сделаем блок-схему

паскаль огэ как решать

Как это работает?

  1. Программа получает на вход число а.
  2. Далее оно проходит через условие окончания цикла a<>0. Если условие не выполняется, то заходим внутрь цикла и проверяем число а по критериям задачи.
  3. Если критерии выполнены, то число заносится в счетчик (k+1).
  4. Далее вводится следующее значение числа а (новое число).
  5. Идем по стрелке на проверку условия цикла. Если оно  выполняется, то повторяем предыдущие шаги внутри цикла.
  6. При невыполнении (a=0) выводим полученное значение k и завершаем программу.

Текст программы на Паскале:

var a, k: integer;
begin 
  k:=0;
  readln(a);
   while a<>0 do
    begin
     if (a mod 5=0) and (a mod 2=0) then k:=k+1;
     readln(a);
    end;
  writeln(k)
end.

Пример 2. Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, оканчивающихся на 3. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 3. Количество чисел не превышает 100. Введённые числа не превышают 300. Программа должна вывести одно число — сумму чисел, оканчивающихся на 3.

Решение:

Читая условие задачи, явно видим, что нам необходим цикл с параметром. А также нам нужно будет сумму только тех чисел,  которые оканчиваются цифрой 3. Следовательно, в программе будем записывать одно условие: a mod 10 =3
Если все еще не понятно, почему такое условие, советую сначала почитать статью «Операции с целыми числами»

Поясним обозначения переменных:

  • n — количество вводимых чисел,
  • s — сумма чисел, удовлетворяющих условиям задачи,
  • a — число, которое получает программа на входе,
  • i — параметр цикла, счетчик выполнений цикла

Теперь, для большего понимания, сделаем блок-схему

паскаль огэ задания примеры

Как это работает?

  1. Программа получает на вход количество чисел n.
  2. Начинается цикл, который выполнится ровно столько раз сколько указано количество чисел. В качестве счетчика введенных чисел, используется переменная цикла i (параметр цикла).
  3. На первом шаге цикла программа получает первое число а. Проверяется условие. Если число оканчивается цифрой 3, то сумма s увеличивается на значение введенного числа а (s+a).
  4. Далее шаги внутри цикла повторяются с каждым новым числом.
  5. После обработки в цикле последнего числа выводится результат вычисленной суммы.

Текст программы на Паскале:

var a,i,s,n: integer;
begin 
  readln(n);
  s:=0;
   for i:=1 to n do
    begin
     readln(a);
     if a mod 10=3 then s:=s+a;
    end;
  writeln(s);
end.

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

Урок № 1 Первая программа.

Уроки Паскаль изучаются в 9 классе. Язык используется для решения 9, 10 задания ОГЭ.  Это первый урок в котором мы рассмотрим следующие вопросы.

  • Мы выберем и установим среду разработки.
  • Разберемся в структуре языка программирования Паскаль
  • Напишем свою первую программу.

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

ПаскальABC

Есть среда, которая называется Turbo Pascal.

турбоПаскаль

Еще есть среда Free Pascal.

Фри Паскаль

Кроме того, есть многие и другие, но эти самые популярные. Я лично рекомендую скачать среду pascalabc. Найти её можно по этому адресу pascalabc.net. Среда достаточно свежая разработка ведется по сей день. Несмотря на то что язык довольно давно разработан, среда обновляется и появляются новые удобства для нашей работы. Скачайте среду себе на компьютер.

После установки и запуска среды она у вас будет выглядеть вот так.

Паскаль абц

В среде все стандартно вверху есть меню, панель управления, окно написания программы и внизу окно вывода результатов программы. Внизу также есть вкладки список ошибок и сообщение компилятора. Что такое компилятор? Компилятор — это программа она разрабатывается для каждого языка программирования и непосредственно тот код, который мы пишем преобразует в необходимый вид для компьютера.

Давайте начнем писать код и будем разбираться.

Самое первое что мы должны сделать это объявить название программы.

Program firstprogram;

Program — объявление названия.

firstprogram — название программы.

; — обязательно в конце названия программы ставим точку с запятой.

Затем надо дать понять компилятору что начинается программа. Для этого используется ключевое слово begin (начало) и завершение пишется ключевое слово end. (конец). После того как мы написали ключевое слово end. (конец), мы можем писать любые символы в поле программы он компилироваться не будет.

образец программы

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

Оператор writeln это сокращение от writeline (запиши строку)

Для вывода чего либо используются скобки ( ) внутри пишутся имя переменной или константы. Мы же выведем простой текст. Он пишется в кавычках ‘ ‘. Внутри кавычек пишем непосредственно сообщение, которое мы хотим вывести. Здесь можно использовать родной русский язык.

writeln(‘Привет, мир!’);

Совет если вы ставите символы » » ‘ ‘ ( ) то ставьте сразу закрывающие символы. В современных языках JavaScript или C++, среда разработки сама подставляет. Паскаль на то и используется в образовательных учреждениях чт бы привить школьникам и студентам грамотное умение написать программу.

После того как программа написана что бы ее запустить нужно нажать на кнопочку Выполнить.

паскаль первая программа

На этом первое занятие подошло к концу. На следующем уроке мы познакомимся с константами переменными и увидим для чего они нужны и как они облегчают жизнь программиста.

Муниципальное общеобразовательное
учреждение

«Поедугинская основная
общеобразовательная школа»

Разработка урока по
информатике

в 9 классе на тему:

«Разработка программы на
Pascal»

Подготовила учитель
информатики:

Барышева О.Д.

Поедуги, 2019г.

Тема урока: Разработка
программы на Pascal

Цель
урока: 
знакомство с правилами программирования, разработка простой программы
на языке Pascal.

Задачи
урока:

1.     
Обучающая – познакомить учащихся
со структурой программы, с правилами программирования, научить создавать
простые программы на языке Pascal;

2.     
Развивающая – продолжать развивать
логическое и алгоритмическое мышление, формировать навыки работы в среде
программирования Pascal;

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

Тип
урока:
 урок открытия нового знания

Форма
урока:
 урок — путешествие

Основные
термины и понятия урока:
 рrogram, var, begin,
write, read, writeln, readln, end, структура программы на Паскале.

Технологии
обучения:

Информационно-коммуникационная
технология, технология развивающего обучения, технология сотрудничества,
частично- поисковая, личностно-ориентированное обучение

Планируемые
результаты:

Личностные:

ü  формирование
ответственного отношения к учению на основе мотивации к обучению и познанию;

ü  формирование
осознанного, уважительного и доброжелательного отношения к другому человеку,
его мнению;

ü  формирование
коммуникативной компетентности в общении и сотрудничестве со сверстниками и
взрослыми в процессе учебной деятельности.

Предметные:

Знать:

ü  общие
сведения о языке программирования Pascal;

ü  предназначение
формальных языков.

Уметь:

ü  работать
с программной средой Pascal ABC;

ü  научиться
правильно выстраивать структуру программы

Метапредметные:

Познавательные
УУД:

ü  изучить
структуру программы на языке Pascal;

ü  научиться
запускать программу после написания программы;

ü  применять
полученные знания при написании программ.

Регулятивные
УУД

ü  выполнять
учебные задания в соответствии с целью;

ü  соотносить
приобретенные знания с реальной жизнью;

ü  выполнять
учебное действие в соответствии с планом.

Коммуникативные
УУД

ü  формулировать
высказывание, мнение;

ü  умение
обосновывать, отстаивать свое мнение;

ü  согласовывать
позиции с партнерами и находить общее решение;

ü  грамотно использовать речевые средства для представления
результата.

Межпредметные
связи:

Английский
язык, физика, математика

Формы
работы:
фронтальная, групповая, индивидуальная

Оборудование
и программное обеспечение, сетевые сервисы
: компьютеры,
нетбуки, интерактивная доска Smart Board, проекторы, ОС Windows 7, MS Office
2010; Pascal ABC

Наглядный
материал:
 баннер
с изображением космического корабля, мини-баннер «Языки программирования»,
проездные билеты, карточки, практические работы

Литература:

1.     
Информатика 9 класс. И.Г. Семакин, Л.А. Залогова, С.В. Русаков,
Л.В. Шестакова (2012 год).

2.     
Информатика 9 класс. Л.Л. Босова, М.: Бином 2013

Дидактические
материалы:

1.     
Ребус по информатике

2.     
Презентация: «Структура программирования на языке Pascal»,

3.     
Самоконтроль знаний с использованием интернет ресурсов
«Онлайн-тест по теме «Язык Pascal: структура, типы данных».

Интернет-ресурсы

1.     
https://onlinetestpad.com/ru/tests/informatics/9class
(доступно 02.02.2019)

2.     
 https://testedu.ru/test/informatika/9-klass/paskal.html

3.     
http://fb.ru/article/239059/paskal—eto-yazyik-paskal-dlya-nachinayuschih-opisanie

1.                    
https://ru.wikipedia.org/wiki/Паскаль_(язык_программирования)

3.http://phys.bspu.by/static/um/inf/prg/lecpdf/pascal1s.pdf

4. http://studopedia.ru/2_3608_struktura-programmi-na-yazike-programmirovaniya-s-ili-Pascal.html

План урока:

1.Организационный
момент 1мин

2.Актуализация
знаний -2мин.

3.Мотивация
учебной деятельности учащихся-1 мин.

4.Осознание
нового материала-10мин.

5.Физкультминутка-40с.

6.Закрепление
первичное.

7.Вторичное
закрепление. Практическая работа

«Сообщение
из прошлого»-7мин.

8.Тест
« 4 языка» -5мин.

9.Подведение
итогов урока. Домашнее задание-4 мин.

10.Рефлексия-4
мин.

Этапы урока

Краткое
содержание, действия учеников

Действия учителя

Мотивирование на
учебную деятельность

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

Настраивает
учеников на успешную работу

Актуализация
знаний

Затем
ученики получают задание, для решения которого не достаточно имеющихся умений
(«Мозговой штурм» – ребята предлагают массу идей, возможных путей решения –
выход на целеполагание.

Консультирует

Целеполагание,
постановка проблемы

При
анализе идей «Мозгового штурма» выявляются причины затруднения для дальнейшей
работы, выясняется проблема. Ученики самостоятельно формулируют тему и цель –
используется метод «Домысливание…»

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

Поиск путей
решения проблемы

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

1.      Составить программу на алгоритмическом языке.

2.      Составить программу в виде блок-схемы.

Консультирует

Решение проблемы

Выполняют
задание, которое сначала оказалось непосильным для решения:

С
помощью учителя английского языка, разбирают написание и произношение команд
программы. Пробуют написать программу на языке Паскаль на компьютере.

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

Консультирует
учитель английского языка, физики

Коррекция

Проверяют
правильное написание программы, выявляют, все ли справились с заданием,
формулируют затруднения

Помогают,
советуют, консультируют

Физкультминутка

Вместе с
роботом выполняют физкультминутку.

Закрепление.
Практическая работа

Составление
программ по новой теме, работа на компьютере

Консультирует
учитель физики

Оценивание

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

Консультирует,
обосновывает оценки

Рефлексия
учебной деятельности

В конце
занятия была предложена рефлексия по методу «Облака тегов» (неоконченное
предложение):

«Было
трудно…»;

«Я
понял, что…»;

«Я
научился…»;

«Сегодня
я узнал…»;
«Было интересно узнать, что…»;

«Я
смог…»;

Благодарит
учеников за урок

Ход урока

I.
Организационный момент

Здравствуйте!
Вас, юные пилоты, приветствует на современном космодроме «МОУПООШ» 1 капитан Барышева
Оксана Дмитриевна и предлагаю совершить небольшой полет по высокоуровневому миру
информатики, где вы будете пилотами. А вот и приземлился на школьной площадке
суперсовременный, паскалеориентированный космический корабль. Внимание!
Внимание! У 1 платформы остановился корабль «Паскальборт 9». Просим всех
приготовиться. Так, все ли на месте (в журнале отмечается отсутствующие учащиеся).

II.
Актуализация знаний

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

Молодцы!
Все получили пароли для входа в звездолет. Внимание! На борт нельзя брать
следующие предметы: учебник, рабочую тетрадь. Юные пилоты, вы находитесь на
борту космического судна, поэтому предлагаю вспомнить правила работы за любым
техническим устройством (Слайд )

III. Мотивация
учебной деятельности

Вот
мы с вами и на борту, где придется самим пилотировать звездолет. Как вы
думаете, у нас с вами получится завести эту машину? Не знаю, не знаю. Ни одного
знакомого слова или прибора я не вижу. А давайте подумаем, с помощью чего мы
можем завести наш корабль? Внимательно посмотрите на приборную доску, что вы
там видите?
(метод мозгового штурма)

Возможные
ответы:
«Pascal», переменные, Бейсик и тд.

Да,
совершенно верно. А что еще мы там видим?

Выход
на тему урока:
Мы начали с вами раздел Программирование,
познакомились с языками высокого уровня, с системой команд, с величинами.
Научились составлять алгоритм на алгоритмическом языке и в виде блок-схем.

Возможный
ответ:
что если мы сумеем написать программу на языке высокого уровня,
то у нас получится поднять корабль в воздух? Название сегодняшнего нашего урока
– путешествия «Разработка программы на Pascal»

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

1. Со структурой
 программы на языке Паскаль.

2. С системой
команд (операторами).

3. С
правилами записи.

Вы,
абсолютно правы. Приступим.

IV. Осознание
нового материала

Работа
в группах:

3. Составить
программу на алгоритмическом языке.

4. Составить
программу в виде блок-схемы.

(Алгоритм, составленный для некоторого исполнителя, можно
представить различными способами: с помощью графического или словесного
описания; в виде таблицы; последовательностью формул; записанным на
алгоритмическом языке (языке программирования).)

Проверяем
(эталон на доске).

Структура
программы на языке Паскаль:

Напомню, что программа — это упорядоченный
список команд. Каждый язык программирования предлагает свою систему
упорядочивания этого списка. Так, например, возможно знакомый вам BASIC просто
нумерует строки. В Паскале мы будем говорить о достаточно строгой структуре
программы, которая должна соблюдаться неукоснительно. Иначе компьютер просто не
поймет вас.

Любая программа на Паскале должна состоять
из трех основных разделов:

I Раздел заголовка (объявления программной
единицы);

II Раздел описаний;

III Раздел исполняемых операторов (тело
программы).

Для наилучшего усвоения приглашается 2
капитан Никифорова Татьяна Владимировна, она поможет нам разобраться с
написанием программ, так как здесь используется написание на английском языке.

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

Т.В. Для
программ эта срока начинается с зарезервированного слова program, после
которого следует собственно имя программы. В конце обязательно ставится точка с
запятой.

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

Т.В. Описание
переменных начинается с зарезервированного слова
var
(
variables),
потом ставиться «:».

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

Т.В. Слово
Integer, обозначает целый тип,
вещественный тип обозначается словом  
real.

Тело программы (раздел исполняемых
операторов) содержит собственно программный код, отвечающий за реализацию
алгоритма.

Т.В. При
этом тело программы обязательно оформляется так называемыми операторными
скобками — begin … end.

Т.е. все операторы, реализующие ваш
алгоритм должны помещаться между этими операторными скобками.

Т.В. Ввод
исходных данных с клавиатуры происходит по оператору
read (читать) или readln(read line)(читать
строку)
. Вывод результатов происходит по оператору write
(писать) или
writeln(write line)(писать
в строку). 

Таким образом,
структура программы Pascal в простейшем случае имеет вид (Слайд)

На
уроке физики мы с вами изучили раздел «Механические колебания, волны и звук».
Мы знаем, что можем рассчитать длину, скорость волны, период колебаний.

Давайте,
вспомним, по какой формуле определяется длина волны:

Вспомнили,
предлагаю написать программу, которая позволит нам решить задачи. Давайте,
теперь попробуем написать программу

Program volna;

Var λ,
υ, ν: real;

Begin

Write (‘υ, ν‘);

Read (υ, ν);

λ:= ν/υ;

Write (‘λ=’,λ);

End.

V.Физкультминутка

Молодцы!
С первичным инструктажем вы справились. Ой, наши суперчувствительные датчики
дают нам знать, что обнаружили у нас признаки усталости.

Предлагаю
сделать музыкальный перерыв. Все готовы? Встали, повторяем за роботом
действия. (Робот)

VI.
Закрепление.
Практическая работа.  Тест «4 языка»

Давно
это было, к учащимся общеобразовательных школ пришел гость с очень коротеньким
названием, но с очень сложным содержанием (ГИА). Он был большой, капризный, с
ним было сложно справиться.

В
народе говорят, не так страшен экзамен, как нам его представляют. Ребята, ваша
задача  решить задачу, предварительно посовещавшись, высказать ответ. Перед
вами программа на 4 языках. Определите значение переменой с после выполнения
следующего фрагмента программы, (работа на компьютере – в парах).

Молодцы.
Все справились. Ура, мы взлетаем!

Совершив
полет вокруг земли, «Паскальборт9» на суперсовременном, суперскоростном
корабле, вернулись в родную школу!

VII.
Подведение итогов урока. Домашнее задание

Так,
ребята, запишите домашнее задание — написать программу, которая вычисляет
площадь треугольника по формуле Герона, повторить словарь языка.


Рефлексия

А
теперь «Паскалиусы 9-го» я вам предлагаю выбрать на своих столах те картинки,
которые соответствовали вашему внутреннему состоянию во время нашего
космического путешествия.
Облако «тегов», 

И
мне было очень приятно с вами поработать!

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

Спасибо
за урок. Спасибо вам!

Приложение
1

Пузырек для мыслей: облако: я смог…

Приложение
2

hello_html_m5214fb4e.jpg

Ответ: Адрес

hello_html_a1717c2.jpg

Ответ: База

hello_html_m58edbf0c.jpg

Ответ: Браузер

hello_html_4e60657f.jpg

Ответ: Вектор

hello_html_m46f655c3.jpg

Ответ: Винчестер

hello_html_m794f02c0.jpg

Ответ: Имя

hello_html_12963af4.jpg

Ответ: Истина

hello_html_773deefa.jpg

Ответ: Каталог

hello_html_m209ea8bd.jpg

Ответ: Клиент

hello_html_m1f9ada71.jpg

Ответ: Листинг

hello_html_m18dcf9.jpg

Ответ: Логика

hello_html_64ef50ba.jpg

Ответ: Массив

hello_html_308e83fd.jpg

Ответ: Модель

hello_html_m3a2ee5a1.jpg

Ответ: Ноутбук

hello_html_m5f8484a.jpg

Ответ: Обеспечение

hello_html_373c6bfc.jpg

Ответ: Окно

hello_html_be3eb30.jpg

Ответ: Панель

hello_html_3484e411.jpg

Ответ: Пароль

hello_html_m202d5834.jpg

Ответ: Пиксель

hello_html_1d4496cf.jpg

Ответ: Проводник

hello_html_76bb4f4c.jpg

Ответ: Программа

hello_html_2a0d39c4.jpg

Ответ: Программист

hello_html_55bcfa2b.jpg

Ответ: Процедура

hello_html_m2f5ff64a.jpg

Ответ: Пуск

hello_html_m2c02ac5e.jpg

Ответ: Регистр

hello_html_19afd4cc.jpg

Ответ: Редактор

hello_html_m3c4e8853.jpg

Ответ: Ресурсы

hello_html_16baa9fe.jpg

Ответ: Таблица

hello_html_m2ea3c4e0.jpg

Ответ: Текст

hello_html_m2ac3fdce.jpg

Ответ: Торрент

hello_html_42ffaec4.jpg

Ответ: Хакер

hello_html_3aec5639.jpg

Ответ: Яндекс

hello_html_m99944ac.jpg

Ответ: Ячейка

hello_html_657bb6f5.jpg

Ответ: адаптер

hello_html_4171823a.jpg

Ответ: администратор

hello_html_mfe1f3bd.jpg

Ответ: алгол

hello_html_6f2ebcbf.jpg

Ответ: конфигурация

hello_html_m2c0e6024.jpg

Ответ: процедура

hello_html_m735e3cc5.jpg

Ответ: конъюнкция

hello_html_41d37090.jpg

Ответ: вирус

hello_html_m7b53b716.jpg

Ответ: индекс

hello_html_m77ee9d24.jpgОтвет: робот

hello_html_55bfe49f.jpg

Ответ: бейсик

hello_html_10468e24.jpg

Ответ: драйвер

hello_html_151c6962.jpg

Ответ: терминал

hello_html_m7b415641.jpg

Ответ: триггер

hello_html_m4f65c83c.jpg

Ответ: графопостроитель

hello_html_m1c3aeb4.jpg

Ответ: дискретизация

hello_html_526cdf89.jpg

Ответ: дистрибутив

hello_html_m37e87058.jpg

Ответ: плата

hello_html_m79d91e1c.jpg

Ответ: сортировка

hello_html_m7a6aac99.jpg

Ответ: команда

hello_html_macd2202.jpg

Ответ: интерфейс

hello_html_m20b0c976.jpg

Ответ: ветвление

hello_html_28ff2d45.jpg

Ответ: вывод

hello_html_m44b2ab2c.jpg

Ответ: байт

hello_html_m87935f0.jpg

Ответ: макрос

hello_html_6b4d511e.jpg

Ответ: алгоритм

hello_html_m792c7af8.jpg

Ответ: архивация

hello_html_5d25d0a0.jpg

Ответ: диаграмма

hello_html_m71525286.jpg

Ответ: транслятор

hello_html_m19efea66.jpg

Ответ: пикселизация

hello_html_2fd08f2f.jpg

Ответ: запрос

hello_html_m4f4257bc.jpg

Ответ: окно

hello_html_m7b663c5f.jpg

Ответ: протокол

hello_html_m7c6bad35.jpg

Ответ: фильтрация

hello_html_m9eadfb4.jpg

Ответ: шаблон

hello_html_3582e71a.jpg

Ответ: ячейка

hello_html_77fae708.jpg

Ответ: килобит

hello_html_779dad62.jpg

Ответ: модем

hello_html_23ddde16.jpg

Ответ: документ

hello_html_m265213b6.jpg

Ответ: каталог

hello_html_m2b94260.jpg

Ответ: графика

hello_html_6a1bc4fa.jpg

Ответ: форматирование

hello_html_m1a24afcd.jpg

Ответ: микрофон

hello_html_49f7c4ee.jpg

Ответ: провайдер

hello_html_7c9c173c.jpg

Ответ: быстродействие

hello_html_2182bdba.jpg

Ответ: разрешение

hello_html_10f7a2e6.jpg

Ответ: джойстик

hello_html_me97c22c.jpg

Ответ: анимация

hello_html_5a0ca0f8.jpg

Ответ: контроллер

Понравилась статья? Поделить с друзьями:
  • Как найти информацию про предков
  • Как найти историю запросов алисы
  • Как найти лего по фотографии
  • Как найти несмещенные оценки генеральной дисперсии
  • Если фарш кислит на вкус как исправить