Мы начинаем изучать раздел » Алгоритмизация и основы программирования». На этом уроке вы повторим, что такое алгоритм, рассмотрим понятие программирование, познакомимся с особенностями среды текстового программирования и системой программирования КуМир.
1. Изучи материал
Прочти материал учебника § 14,15.
Алгоритмы написанные для технических устройств, на языке понятном им называют программы.
Программа — последовательность команд, которая хранится в памяти и которую необходимо выполнить.
Процесс создания программ является программированием.
Для программирование существуют специальные программы — среды программирования.
Язык текстового программирования — это среда (программа) в которой команды вводятся с клавиатуры и сохраняются в виде текстовых файлов. Например, популярное программирование на Рython и JavaScript.
Как писать программы для ЕГЭ по информатике — алгоритм для любого задания l Коля Касперский
пример текстового программирования (КуМир)
Язык визуального программирования — это такой язык, который позволяет программисту создавать программы, манипулируя графическими элементами, а не печатая текстовые команды. Известным примером является Scratch
Познакомься с системой программирования КуМир
Источник: informik-5.blogspot.com
Pascal в ОГЭ по информатике
Задание 15.2 в ОГЭ по информатике на составление программы. Как правило, это программы содержащие и циклы и условия. В этой статье постараемся разобраться как решать такие задачи.
Условный оператор присутствует практически в каждой задаче. В решении задач используют два вида циклов: цикл с параметром и цикл с предусловием.
Паскаль ОГЭ как решать?
Чтобы определить какой цикл следует использовать, необходимо внимательно прочитать задание.
- Если в задаче сказано: программа получает на вход количество чисел, то следует использовать цикл с параметром.
- Если в задаче сказано: количество введённых чисел неизвестно, а последовательность чисел заканчивается 0 , то следует использовать цикл с предусловием.
Разберем несколько вариантов задач, с которыми придется столкнуться на экзамене по информатике в 9 классе.
Пример 1. Напишите программу, которая в последовательности натуральных чисел определяет количество всех чётных чисел, кратных 5. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 — признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число: количество всех чётных чисел, кратных 5.
Решение:
Читая условие задачи, явно видим, что нам необходим цикл с предусловием. А также нам нужно будет отбирать четные числа, да еще и кратные 5. Следовательно, в программе будем записывать два условия:
- определение четности числа: a mod 2 =0
- определение кратности 5: a mod 5 =0
Причём эти условия должны выполняться одновременно. А значит, нужно составить из них одно сложное условие, используя логическую операцию — умножение. Вот так:
(a mod 2 =0) and (a mod 5 =0)
- k — количество чисел, удовлетворяющих условиям задачи,
- a — число, которое получает программа на входе
Теперь, для большего понимания, сделаем блок-схему
Как это работает?
- Программа получает на вход число а.
- Далее оно проходит через условие окончания цикла a<>0. Если условие не выполняется, то заходим внутрь цикла и проверяем число а по критериям задачи.
- Если критерии выполнены, то число заносится в счетчик (k+1).
- Далее вводится следующее значение числа а (новое число).
- Идем по стрелке на проверку условия цикла. Если оно выполняется, то повторяем предыдущие шаги внутри цикла.
- При невыполнении (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 — параметр цикла, счетчик выполнений цикла
Теперь, для большего понимания, сделаем блок-схему
Как это работает?
- Программа получает на вход количество чисел n.
- Начинается цикл, который выполнится ровно столько раз сколько указано количество чисел. В качестве счетчика введенных чисел, используется переменная цикла i (параметр цикла).
- На первом шаге цикла программа получает первое число а. Проверяется условие. Если число оканчивается цифрой 3, то сумма s увеличивается на значение введенного числа а (s+a).
- Далее шаги внутри цикла повторяются с каждым новым числом.
- После обработки в цикле последнего числа выводится результат вычисленной суммы.
Текст программы на Паскале:
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.
Источник: infouch.ru
Урок 19
Простейшие программы. Вычисления. Стандартные функции
§54. Алгоритм и его свойства. §55. Простейшие программы. §56. Вычисления
Напишем программу, которая выполняет сложение двух чисел:
1) запрашивает у пользователя два целых числа;
2) складывает их;
3) выводит результат сложения.
Программу на псевдокоде (смеси русского и школьного алгоритмического языков) можно записать так:
алг Сумма
нач
ввести два числа
кон
Компьютер не может выполнить псевдокод, потому что команд «ввести два числа» и ей подобных нет в его системе команд. Поэтому нам нужно «расшифровать» все такие команды через операторы языка программирования.
В отличие от предыдущих задач здесь требуется хранить данные в памяти. Для этого используют переменные.
Переменная — это величина, которая имеет имя, тип и значение. Значение переменной может изменяться во время выполнения программы.
Переменная определяет область памяти, где хранится только одно значение. При записи в неё нового значения «старое» стирается, и его уже никак не восстановить.
Переменные в программе необходимо объявлять 1 . При объявлении указывается тип переменной и её имя (идентификатор). Значение переменной сразу после объявления неопределённое: переменной выделяется некоторая область памяти, и там могло быть до этого записано любое число.
Некоторые языки, например язык Си, позволяют записывать в переменную значение другого типа, но вся ответственность за результат ложится на программиста.
Вот так объявляются целочисленные переменные (в которых могут храниться только целые значения) с именами а, b и с:
цел а, b, с var а, b, с: integer;
В языке Паскаль описание переменных начинается с ключевого слова var, после него записывают список переменных и в конце через двоеточие — их тип, в данном случае целочисленный (англ, integer).
Имена переменных строятся по тем же правилам, что и имена программ. В языке Паскаль можно использовать в именах латинские буквы (строчные и заглавные буквы не различаются), цифры (но имя не может начинаться с цифры, иначе транслятору будет сложно различить, где начинается имя, а где — число) и знак подчёркивания «_».
В школьном алгоритмическом языке в именах разрешены кроме перечисленных символов ещё пробелы и русские буквы, причём строчные и заглавные буквы различаются (поэтому х и X — это разные имена переменных).
Желательно давать переменным «говорящие» имена, чтобы можно было сразу понять, какую роль выполняет та или иная переменная.
Тип переменной нужен для того, чтобы:
• определить область допустимых значений переменной;
• определить допустимые операции с переменной;
• определить, какой объём памяти нужно выделить переменной и в каком формате будут храниться данные (вспомните, что целые и вещественные числа хранятся в компьютере по-разному, см. главу 4);
• предотвратить случайные ошибки; например, при попытке записать символ в целую переменную выдаётся сообщение об ошибке 2 .
2 Некоторые языки, например язык Си, позволяют записывать в переменную значение другого типа, но вся ответственность за результат ложится на программиста.
В алгоритмическом языке можно при объявлении задать начальные значения переменных:
цел а, b=1, с=55
Значение переменной а осталось неопределённым.
Большинство трансляторов Паскаля автоматически заполняют нулями все переменные основной программы, однако лучше не надеяться на это и явно задавать начальные значения всех переменных.
Приведём полную программу сложения двух чисел:
Оператор ввод (в Паскале — процедура read) предназначен для ввода данных (например, с клавиатуры).
Оператор, содержащий символы «:=», — это оператор присваивания, с его помощью изменяют значение переменной. Он выполняется следующим образом: вычисляется выражение справа от символов «:=», а затем результат записывается в переменную, записанную слева от символов «:=». Поэтому, например, оператор
увеличивает значение переменной i на 1.
У приведённой выше программы сложения чисел есть два недостатка:
1) перед вводом данных пользователь не знает, что от него требуется (сколько чисел нужно вводить и каких);
2) результат выдаётся в виде числа, которое означает неизвестно что.
Хотелось бы, чтобы диалог программы с пользователем выглядел так:
Введите два целых числа: 2 3
Подсказку для ввода вы можете сделать самостоятельно. При выводе результата ситуация несколько усложняется, потому что нужно вывести значения трёх переменных и два символа: «+» и «=». Для этого строится список вывода, элементы в котором разделены запятыми:
вывода, ‘+’, b, ‘=’,с write(a, ‘+’, b, ’=’,с);
Обратите внимание, что имена переменных записаны без апострофов.
В принципе можно было бы обойтись и без переменной с, потому что элементом списка вывода может быть арифметическое выражение, которое сразу вычисляется и на экран выводится результат:
вывод а, ‘+’, b, ‘=’, a + b write (а, ‘+’, b, ‘=’, а + b);
В обоих языках (в среде КуМир — начиная с версии 2.0) можно использовать форматный вывод: после двоеточия указать общее количество знакомест, отводимое на число. Например, программа
вывод а:5 write ( а:5 );
выведет значение целой переменной а, заняв ровно 5 знакомест:
123
Поскольку само число занимает только 3 знакоместа, перед ним выводятся два пробела, которые здесь мы обозначили как « ».
Следующая страница Вопросы и задания
Cкачать материалы урока
Источник: xn—-7sbbfb7a7aej.xn--p1ai