Реферат: Язык программирования Паскаль и ветвление
Write (‘введите номер решающей задачи’);
Readln (N);
Write (‘введите исходные данные: М =’);
Readln (M);
Case N of
1: K: = NA / M;
2: begin
Write (‘R = ‘);
Readln (R);
K: = NA *R/M;
End;
3: begin
write (‘плотность вещества Р = ’);
Readln (P);
Write (‘V = ‘);
Readln (V);
K: = NA *P*V/M;
End;
4: begin write (‘плотность вещества P = ’);
Readln (P);
K: = NA *P/V
End;
End;
Write (‘число молекул K = ’, K’);
End.
2.3.2 Вложенные условия.
Существуют задачи в которых по одной из ветки ветвления нужно рассмотреть ещё одно условие.
Рассмотрим задачу: сравнить 3 целых числа и вывести на печать максимальное.
Program chisla;
Var a, b, c: integer;
Begin
Writeln (‘Введите три числа’);
Read (a, b, c);
If a<b then
If a>c then writeln (‘ максимально число ’, a)
Else if b>c then writeln (b максимально число’, b)
Else writeln (‘c максимальное число’, c);
End.
Вот блок – схема данной задачи:
2.3.3 Логические выражения.
Алгоритм решения квадратного уравнения содержит проверку условия D<0. Два значения, D и 0, связаны отношением < - меньше. Если условие выполняется то говорят что соответствующее выражение истинно, если не выполняется то ложь.
Речь идёт о логическом выражении. Примером логических выражений могут служить математические отношения связанные знаками >, <, =, логические выражения имеют два значения True( истина) и False (ложно). Логические выражения такие могут иметь логические операции: отрицания (NOT), конъюнкций (OR) и дизъюнкции (AND).
Логические операции имеют следующую таблицу истинности:
A | B | Not (A) | (A) AND (B) | (A) OR (B) |
True | True | False | True | True |
True | False | False | False | True |
False | True | True | False | True |
False | False | True | False | False |
Пусть требуется определить, принадлежит ли точка с координатой x отрезку [a; b]. Если записать это условие двойным неравенством, то читать его надо так: x меньше либо равен b и больше либо равен a (a<x<b). Отношение “меньше или равно” в Паскале записывается двумя знаками. Аналогично записывается и “больше либо равно”. Однако в Паскле нельзя записывать двойное неравенство. Используя логическую операцию and (и), запишем:
(x>=a) and (x<= b).
Отношения, между которыми стоит логическая операция, заключаются в круглые скобки.
Имеется прямоугольное отверстие со сторонами a и b и кирпичь с рёбрами x, y z. Требуется составить условие прохождения кирпича в отверстие.
Кирпич пройдёт в прямоугольное отверстие, если выполняется сложное условие:
(a>=x) and (b>=y) or
(a>=y) and (b>=x) or
(a>=x) and (b>=z) or
(a>=z) and (b>=x) or
(a>=y) and (b>=z) or
(a>=z) and (b>=y)
Для трёх граней шесть условий получается потому, что можно каждую грань повернуть на 90 и проверить для каждой грани два случая.
Определить принадлёжность точки фигуре. Пусть фигура задана ограничивающими её прямыми.
Для каждой прямой определим полу плоскость, в которой находится фигура- треугольник АВС. Полуплоскость задаётся неравенством.
Полуплоскость, находящаяся выше от оси х определяется неравенством y>0.
Полуплоскость, находящаяся справа от прямой, соединяющей точки (-1,0) и (0,2), задаётся неравенством y-2x-2<0.
Полуплоскость, находящаяся слева от прямой, соединяющей точки (1,0) и (0,2), задаётся неравенством y+2x-2<0.
Условие принадлежности точки (x,y) фигуре :
(y>0) and (y-2*x-2<0) and (y+2*x-2<0).
Приведём пример программы определяющая существования треугольника со сторонами a, b и c. Условие существования треугольника известно из геометрии: сумма двух любых сторон должна быть больше третьей. Следовательно, для всех сторон условие “сумма двух больше третьей” должно выполняться.
Program e4;
Var a, b, c: real;
Begin
Writeln (‘дите длины трёх сторон треугольника’);
Readln (a, b, С);
Write (‘треугольник со сторонами ’, a, b, c);
If (a+b>c) and (b+c>a) and (a+c>b)
Then writeln (‘существуют’)
Else writeln (‘не существуюет’);
Readln
End.
Ш . Технологический пакет к урокам информатики по теме “Ветвление в Паскале”
Задачи с ветвлением и их решение.
Program vetvlenie;
Var t: integer;
Begin
Writeln ('Введите температуру сегодня');
Readln (t);
If t<=-30
Then
Writeln (‘Не идти в школу ')
Else writeln (‘Идти в школу');
End.
Программа показывает идти ученику сегодня в школу или нет. С клавиатуры он вводит сегодняшнюю температуру, и если она меньше -30, то не идти в школу, а если больше то выводится сообщение о том чтобы идти в школу. Теперь попробуйте написать программу:
Сделать так чтобы программа выводила сообщение о том у кого больше денег и у кого меньше.
Переделать программу так чтобы вместо денег выводилось сообщение о том кто больше попрыгал. Значения так же вводятся с клавиатуры.
Рассмотри задачу: Для модельного агентства выбираются девушки с объёмами 90 (грудь), 60 (талия), 90 (бёдра). Составить программу для отбора девушек по этим параметрам.
Вопросы и задачи по всей теме.
Составьте программу, которая из двух вводимых вами целых чисел печатает заключение о том, какое число больше
Составьте программу, проверяющую, верно ли утверждение, что введённое вами число является чётным.
Составить программу, определяющую, входит ли введенная вами цифра в десятичную запись введенного вами трёхзначного числа, и печатуящая сообщение о том, входит ли эта цифра в запись числа или нет.
Напишите программы на Паскале для решения следующих задач.
Даны три числа a, b, c. Выясните верно ли a<b<c. Ответ получите в текстовой форме: верно или не верно.
Даны положительные числа a, b, c, x. Выясните, пройдёт ли кирпич с рёбрами a, b, c в квадратное отверстие со стороной x.
Даны три действительных числа. Выберете те из них, которые принадлежат отрезку [1;3].
Присвойте величине а значение наибольшего из трёх заданных чисел.
Даны два числа. Выведите первое из них, если оно больше второго, и оба числа, если это не так.
Проверьте, если среди трёх заданных чисел равные.
Даны три действительных числа. Найдите наибольшее значение их суммы и произведения.
Напишите программу – модель анализа пожарного датчика в помещении, которая выводит сообщение «пожарная ситуация», если температура (в нашей модели она будет вводиться с клавиатуры) в комнате превысила 600 .
Составьте программу, которая из двух вводимых вами чисел, печатает заключение о том, какое число больше.
Составьте программу, проверяющую, верно ли утверждение, что введённое целое число делится без остатка на 3.
Напишите программу, которая анализирует человека по возрасту и относит его к одному из четырёх групп: дошкольник, ученик, рабочий, пенсионер. Возраст вводится с клавиатуры.
Составьте программу, определяющую, входит ли введённая вами цифра в десятичную запись введённого вами трёхзначного числа, и печатающую сообщение о том, входит ли эта цифра в запись числа или нет.
Составьте программу, которая по трём введённым вами числам определит,
могут ли эти числа быть длинами сторон треугольника, если да, то какой получился треугольник с данными длинами сторон (прямоугольный, остроугольный, тупоугольный).
Составьте программу, определяющую, лежит ли точка с указанными координатами X, Y на окружности радиуса R с центром начала координат.
Составьте программу нахождения корня уравнения ax+b=c, где a, b, c – данные числа.
Даны три действительных числа. Возвести в квадрат те из них, значения которых не отрицательны.
Даны три действительных числа. Выбрать из них те, которые принадлежат отрезку {-5;3}.
Известны результаты соревнования трёх лыжник4ов. Выбрать результат победителя и занявшего третье место.
Дано натуральное четырёхзначное число. Верно ли, что все четыре цифры различны?
Дано натуральное число n(n<100), определяющее возраст человека (в годах). Дать для этого числа наименование «год», «года» или «лет»: например, 21 год, 44 года, 65 лет и т.д.
Тест.
Что такое алгоритм?
А) последовательность выполнения действий.
Б) составление программы.
В) Не знаю.
Что такое Блок-схема?
А) Рисунки квадратиков.
Б) графическое изображение алгоритма.
В) Не имеющие смысла геометрические фигуры.
Для чего нужно ветвление в паскале?
А) Для решения более сложных задач.
Б) Для того чтобы больше подумать над решением задачи.
В) я не знаю.
Какое из этих языков программирования не относится к высшему уровню?
А) Паскаль
Б) Бейсик
В) Машинно – ориентированный
Где чаще всего используется язык программирования Паскаль?
А) Дома
Б) В хакерских группировках
В) В школе и других учебных заведениях.
Каких алгоритмов не существует?
А) Корявых
Б) линейных
В) С ветвлением.
Каких операторов не существует?
А) Условный.
Б) Заумный.
В) Составной.
Почему язык Паскаль такой популярный?
А) Он простой в обучении и изучается в школах
Б) Очень сложный Язык программирования и это мне нравится.
В) Я не знаю.
С какой командой начинается программа?
А) начало
Б) var
В) begin
Как выглядит оператор присваивания?
А) :=
Б) :()
В) =;
Что указывается в операторах?
А) условие
Б) переменные
В) начало и конец.
Заключение.
Цель моей работы достигнута: я рассмотрел различные виды алгоритмических конструкций, изучил конструкцию ветвления, научился решать задачи с ветвлением, подобрал и составил сам задачи, тесты и др. задания.
В дальнейшем я бы хотел продолжить свою работу, рассмотрев в Паскале другие конструкции. Так же мне хотелось бы узнать, как описывается конструкция ветвления в других языках программирования.(C++, Delphi)
126 (6-16)
Список литературы
Введение в програмирование: Учеб. Пособие для уч. Сред.и ст. шк. Возраста / Авт.-сост. В.А. Гольденберг.- Мн.: ООО”Харвест”, 1997.- 528 с. (библиотека школьника).
Бондарев В.М., Гублинский В.И., Качко Е.Г..
Основа програмирования/ худож. – оформитель С.А. Пяткова. – Харьков: Фолио; Ростов Н/Д: Феникс, 1997. –368с.
Турбо Паскаль 7.0 – К.: торгово – издательское бюро BHV, 1996 – 448с.: ил. Т. Рюттяна.
Игошев А.Д. Матинин Е.Г. Express Pascal. Учебное пособие для средних уч. Заведений.
Кузницов А.А. Патапова Н.В. Основы информатики. 8-9 кл.: Учеб. Для общеобразовательных учеб. Заведений 2001 176с.:ил.