Значение переменной s. Какое значение переменной S будет напечатано после выполнения фрагмента программы на Бейсике? Присваивание значения переменной
Доступный и понятный материал для изучения задании 9 и 10 ОГЭ по Информатике + задания для отработки
Просмотр содержимого документа
Алгоритмический язык | ||
алг | DIM k, s AS INTEGER | Var s,k: integer; |
Решение :
Как видим, в теле цикла только одна команда s:= s + 8. Т. е. эта операция будет выполняться на каждой итерации (на каждом шаге) цикла.
В теле цикла происходит увеличение значения переменной s на 8. Так как параметр цикла увеличивается от 3 до 8 с шагом 1, то при выполнении программы тело цикла будет выполняться 6 раз (k будет равно 3, 4, 5, 6, 7, 8). Т. е. переменная s увеличитая на 8 * 6 = 48. А так как начальное значение переменной s = 8 и после выполнения программы оно увеличится на 48, то в конечном итоге значение переменной s станет равным 56.
Решение задач типа 10 ГИА по информатике
В таблице Dat хранятся данные о численности учеников в классах (Dat число учеников в первом классе, Dat – во втором и т. д.). Определите, какое число будет напечатано в результате работы следующей программы. Текст программы приведён на трёх языках программирования.
Алгоритмический язык | ||
целтаб Dat цел k , m Dat := 20; Dat := 25 Dat := 19; Dat := 25 Dat := 26; Dat := 22 Dat := 24; Dat := 28 Dat := 26; Dat := 21 Dat := 27 m:= 0 нцдля k от 1 до 11 если Dat[k] 22 то | DIM Dat(11) AS INTEGER DIM k,m AS INTEGER Dat(1) = 20: Dat(2) = 25 Dat(3) = 19: Dat(4) = 25 Dat(5) = 26: Dat(6) = 22 Dat(7) = 24: Dat(8) = 28 Dat(9) = 26: Dat(10) = 21 Dat(11) = 27 m = 0 FOR k = 1 TO 11 IF Dat(k) 22 THEN m = m + 1 END IF NEXT k | Var k, m: integer; Begin Dat := 20; Dat := 25; Dat := 19; Dat := 25; Dat := 26; Dat := 22; Dat := 24; Dat := 28; Dat := 26; Dat := 21; Dat := 27; m:= 0; for k:= 1 to 11 do if Dat[k] 22 then begin m:= m + 1 |
Ответ: ___________________________.
Решение :
Примечание. В массиве Dat, который описан на языке Basic будет 12 элементов, так как нумерация начинается не с первого элемента, а с нулевого.
Массив Dat
Значение |
В теле цикла происходит проверка условия
Итак, правильный ответ 7.
Просмотр содержимого презентации
«Решение задании 9 и 10 ОГЭ по Информатике»
Решение задании
по информатике
Решение задач типа 9 ГИА по информатике
Алгоритмический язык
Бейсик
алг нач цел s, k s:= 8 нц для k от 3 до 8 s:= s + 8 кц вывод s кон
Паскаль
DIM k, s AS INTEGER s = 8 FOR k = 3 TO 8 s = s + 8 NEXT k PRINT s
Var s,k: integer; Begin s:= 8; for k:= 3 to 8 do s:= s + 8; writeln(s); End.
Запишите значение переменной s, полученное в результате работы следующей программы. Текст программы приведён на трёх языках программирования.
Ответ: ___________________________.
Решение :
- Итак, рассмотрим этот алгоритм, записанный на разных языках.
- Вначале объявляется, что будут использованы переменные k и s целочисленного типа
- Далее переменной s присваивается значение 8.
- После этого описывается цикл, где в качестве параметра выступает переменная k, которая изменяется от 3 до 8 с шагом 1 (т. е. будет принимать последовательно значения 3, 4, 5, 6, 7 и 8).
- В теле цикла только одна команда s:= s + 8. Т. е. эта операция будет выполняться на каждой итерации (на каждом шаге) цикла.
- И в самом конце на экран выводится значение переменной s
- В теле цикла происходит увеличение значения переменной s на 8. Так как параметр цикла увеличивается от 3 до 8 с шагом 1, то при выполнении программы тело цикла будет выполняться 6 раз (k будет равно 3, 4, 5, 6, 7, 8). Т. е. переменная s увеличится на 8 * 6 = 48. А так как начальное значение переменной s = 8 и после выполнения программы оно увеличится на 48, то в конечном итоге значение переменной s станет равным 56.
22 THEN m:= 0; m = m + 1 for k:= 1 to 11 do если Dat[k] 22 то m:= m + 1 END IF if Dat[k] 22 then NEXT k begin все m:= m + 1 кц PRINT m end; вывод m кон writeln(m) End. " width="640"
В таблице Dat хранятся данные о численности учеников в классах (Dat число учеников в первом классе, Datво втором и т. д.). Определите, какое число будет напечатано в результате работы следующей программы. Текст программы приведён на трёх языках программирования.
Ответ: ___________________________.
Алгоритмический язык
Бейсик
Паскаль
DIM Dat(11) AS INTEGER
DIM k,m AS INTEGER
Var k, m: integer;
целтаб Dat
Dat: array of integer;
Dat(1) = 20: Dat(2) = 25
цел k, m
Dat(3) = 19: Dat(4) = 25
Dat := 20; Dat := 25
Dat := 19; Dat := 25
Dat(5) = 26: Dat(6) = 22
Dat := 20; Dat := 25;
Dat(7) = 24: Dat(8) = 28
Dat := 26; Dat := 22
Dat := 19; Dat := 25;
Dat := 26; Dat := 22;
Dat(9) = 26: Dat(10) = 21
Dat := 24; Dat := 28
Dat(11) = 27
Dat := 24; Dat := 28;
Dat := 26; Dat := 21
Dat := 27
Dat := 26; Dat := 21;
FOR k = 1 TO 11
Dat := 27;
нц для k от 1 до 11
IF Dat(k) 22 THEN
m = m + 1
for k:= 1 to 11 do
если Dat[k] 22 то
m:= m + 1
if Dat[k] 22 then
m:= m + 1
вывод m
writeln(m)
), то его мы не учитываем, так как 22 не больше 22. Учитывать его можно было бы в том случае, если бы в сравнении стоял знак =. Итак, правильный ответ 7." width="640"
Решение:
- Рассмотрим программу пошагово. Итак, в самом начале объявляются переменные, которые будут использоваться (переменные k и m), а так же массив Dat, содержащий 11 элементов (от 1 до 11).
- Далее идет заполнение массива. Например, элементу массива с индексом 1 присваивается значение 20, элементу с индексом 2 - 25 и так далее. В итоге полученный массив можно представить в таком виде:
- Далее переменной m присваивается значение 0. После чего начинается цикл с параметром k, при этом k изменяется от 1 до 11 с шагом 1.
- Значение элемента массива с индексом k сравнивается с числом 22. Если элемент массива больше 22, то переменная m увеличивается на 1. В противном случае ничего не происходит.
- В самом конце программы на экран выводится значение переменной m.
- Итак, мы перевели программу на человеческий язык, теперь давайте подумаем, что же в итоге получим после ее выполнения. Нас интересует цикл - именно там происходит изменение значения переменной m. До цикла ее значение равно нулю. Далее программа перебирает все элементы массива и сравнивает их с числом 22. И если элемент массива больше 22, то переменная m увеличивается на 1. Таким образом, нам необходимо посчитать все элементы массива, которые больше 22 - их число и будет равно значению переменной m. Таких элементов 7 - это элементы с индексами 2, 4, 5, 7, 8, 9 и 11.
- Следует обратить внимание на элемент под номером 6, который равен 22. Так как сравнение у нас строгое (знак), то его мы не учитываем, так как 22 не больше 22. Учитывать его можно было бы в том случае, если бы в сравнении стоял знак =.
Итак, правильный ответ 7.
Алгоритмический язык программирования - формальный язык, используемый для записи, реализации и изучения алгоритмов. В отличие от большинства языков программирования, алгоритмический язык не привязан к архитектуре компьютера, не содержит деталей, связанных с устройством машины.
Для изучения основ алгоритмизации применяется так называемый Русский алгоритмический язык (школьный алгоритмический язык), использующий понятные школьнику слова на русском языке.
Алголо-подобный алгоритмический язык с русским синтаксисом был введён в употребление академиком А. П. Ершовым в середине 1980-х годов, в качестве основы для «безмашинного» курса информатики.
Основные служебные слова алгоритмического языка
Описание алгоритма
- алг (алгоритм)
- арг (аргумент)
- рез (результат)
- нач (начало) — начало алгоритма
- кон (конец) — конец алгоритма
- дано — исходные данные в произвольной форме
- надо — цель алгоритма
Типы данных:
- цел (целый)
- вещ (вещественный)
- сим (символьный)
- лит (литера) — строка
- лог (логический)
- таб (таблица) — для обозначения массива
- длин (длина) — количество элементов массива
Обозначение условий
- если
- иначе
- выбор
- знач
Обозначение циклов
- нц (начало цикла)
- кц (конец цикла)
- пока
Логические функции и значения для составления выражений
Ввод-вывод
- ввод
- вывод
Общий вид алгоритма
1
2
3
4
5
6
алг
название алгоритма (аргументы и результаты)
| дано
условия применимости алгоритма
| надо
цель выполнения алгоритма
нач
описание промежуточных величин
|
последовательность команд (тело алгоритма)
кон
Часть алгоритма от слова алг до слова нач называется заголовком , а часть, заключенная между словами нач и кон - телом алгоритма .
В предложении алг после названия алгоритма в круглых скобках указываются характеристики (арг , рез ) и тип значения (цел , вещ , сим , лит или лог ) всех входных (аргументы) и выходных (результаты) переменных. При описании массивов (таблиц) используется служебное слово таб , дополненное граничными парами по каждому индексу элементов массива.
В записи алгоритма ключевые слова обычно подчёркиваются либо выделяются полужирным шрифтом. Для выделения логических блоков применяются отступы, а парные слова начала и конца блока соединяются вертикальной чертой.
Основные алгоритмические структуры
Подробное описание основных алгоритмических структур приведено в этой статье . Ниже приводятся шаблоны составления этих структур на алгоритмическом языке.
Неполная развилка
| если
условие
| | то
действия
| всё
Полная развилка
1
2
3
4
5
| если
условие
| | то
действия 1
| | иначе
действия 2
| всё
Ветвление
1
2
3
4
5
6
7
8
| выбор
параметр
| | при знач
значение 1
| | |
действия 1
| | при знач
значение 2
| | |
действия 2
| | иначе
| | |
действия по умолчанию
| всё
Цикл с предусловием
| нц пока
условие
| |
действия
| кц
Цикл с постусловием
| Контрольная работа
Урок 38
Контрольная работа
«Алгоритмизация и программирование»
Внимание! в контрольной работе приведены вопросы и элементы кода из Pascal!
Первый вариант
Часть 1.
1. Как выглядит знак присваивания в программировании? :
- <=
2. Как называется алгоритмическая конструкция, которая состоит из последовательных действий, В строго упорядоченном порядке друг за другом следующих?
- Следование
- Ветвление
- Повторение
3. Какой алгоритм изображен на картинке? :
- Следование
- Ветвление
- Повторение
4. Выберите правильную запись программы :
- programm Yakov_petrovich;
- program Yakov petrovich;
- program Yakov Petrovich;
- program_Yakov_Petrovich;
5. С помощью какой команды можно узнать остаток деления числа a на b :
Часть 2.
1. Запишите значение переменной b
a:=4;
x:=10;
a:= x-a*2;
x:=a*2-x;
2. Что получиться в результате выполнения этого алгоритма? Ответ запишите :
a:=5;
b:=7;
if a>b then b:= a+b-28
else b := a * b -30;
3. Что получиться в результате выполнения этого алгоритма? Запишите значение которое получиться для переменной b
a:=7;
b:=22;
a:= b div a;
b:= b mod a;
4. Какое значение b получиться после выполнения алгоритма? Ответ запишите. (Если необходимо округлить ответ, округляйте до десятых)
a:=3;
b:=90;
for i:=1 to 4 do
b:=b/a;
- program cup_of_tea;
- var a, b, c, y , x: real;
- begin
- writeln(‘Пожалуйста, введите три числа’);
- readln(a,b,c);
- y:=a;
- if b>y then y:=b;
- if c>y then y:=c;
- if ab) or (a>c) then x:=a;
- if ba) or (b>c) then x:=b;
- if ca) or (c>b) then x:=c;
- writeln (y+x);
- end.
- Как называется программа? Напишите
- Запишите какой тип переменных используется в программе.
- Запишите названия используемых переменных.
- В какой строке программа получает данные от пользователя? Напишите номер строки
- Что будет выведено на экран, если пользователь введет значения: 6, 9, 3
Часть 3. Напишите программу.
Вводятся три числа. Вывести наименьшее число.
Второй вариант
Часть I
1. Конструкция алгоритма при котором, результате от проверки выполнения условия могут быть выполнены различные действия, называется:
- Следование
- Ветвление
- Повторение
2. Не равно в pascal пишется:
3. Какая запись верна:
- write (Задайте переменные a и b);
- write (‘ Задайте переменные а и b’);
- write (‘ Задайте переменные ’, а и b);
- write ( Задайте переменные , ‘а и b’);
4. На блок схеме изображена алгоритмическая конструкция:
- Линейного алгоритма
- Алгоритма ветвления
- Алгоритма повторения
5. Команда в pascal которая позволяет прочитать данные полученные от пользователя:
- write
Часть 2.
1. Какое значение будет у переменной k после выполнения этого алгоритма :
a:=2;
k:=4;
a:= k+a*3;
k:=a/2-k;
2. Запишите значение переменной b после выполнения фрагмента алгоритма:
a:=7;
b:=5;
if a>b then b:= a+b+5
else b := a * b -3;
3. Запишите значение переменной b после выполнения фрагмента алгоритма:
a:=4;
b:=15;
a:= b div a;
b:= b mod a;
4. Запишите значение переменной b после выполнения фрагмента алгоритма:
a:=2;
b:=5;
for i:=1 to 5 do
b := a * b ;
5. Рассмотрите алгоритм и ответьте на вопросы:
program Chulok;
var a, b, c, y: real;
begin
writeln (‘Введите три числа’);
readln(a,b,c);
y:=a;
if b>y then y:=b;
if c>y then y:=c;
writeln ( y ) ;
end .
- Напишите название программы.
- Какой тип переменных использован в программе.
- Сколько всего переменных использовано в программе, укажите их имена.
- Перепишите строку, в которой программа получает данные от пользователя.
- Что будет выведено на экран, если пользователь введет значения: 5, 8, 2.
Часть 3. Напишите программу.
Даны два целых числа a и b ( a < b ). Вывести в порядке возрастания все целые числа, расположенные между а и b (включая сами числа a и b ), а также количество N этих чисел.