ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Программирование линейных алгоритмовЛинейные программы могут включать в себя операторы присваивания, ввода-вывода, обращения к процедурам.
Оператор присваивания A:=B; А – переменная; В – выражение; Типы переменной А и значение переменной В должны соответствовать друг другу. Если переменная А - целого типа, то выражение В тоже должно иметь значение целого типа. Задачи. 1.Какие из следующих последовательностей символов являются операторами присваивания? а)X:=Y; б)Min=K+1; в)Summa+1:=W; г)S:=S; д)A:=’****’; е)Rrr=125+1*A ж)Str:=’120*Y’; з)T:=5>Y; 2.Пусть значения переменных Х и У равны, соответственно, 3 и –2, какие значения будут иметь эти переменные после выполнения операторов присваивания? а) X:=X+2*Y; Y:=Y/2; в) Y:=-Y; X:=X+Y; Y:=Y+1; г) X:=1; X:=X+Y; д) X:=Y; Y:=X;
Операторы ввода-вывода В общем случае ввод и вывод значений происходит из файлов привязанных к программе. Ввод с клавиатуры и вывод на экран рассматривается в Паскале, как обмен информацией между программой и стандартными файлами с именами Input (клавиатура) и Output (экран), поэтому при вводе с клавиатуры значений и выводе результатов на экран имена этих файлов не указываются. Оператор вывода Оператор вывода на экран имеет 3 модификации: Write(B1,B2,…,Bn); - где B1,B2,…,Bn – выражения типов: Integer, Char, Real, String, Boolean. При выполнении оператора значения выражений вычисляются и выводятся в одну строку экрана. Значения типа Integer - выводятся в обычной форме в виде целого числа. Значения типа Real – в простейшем случае выводятся в форме с порядком, при этом мантисса содержит 7 цифр. Пример: Write(123.456); на экране – 1.234560Е02 Write(-0.000123); на экране – - 1.230000Е-04 Для удобства восприятия вывода существует возможность задания маски. Она задается в следующем виде: Write(A:N:M); N – целая константа, обозначающая общее число позиций, отводимых под значение A М – целая константа, обозначающая число позиций, отводимых под дробную часть. Пример: Write(123.456:10:4);
Write(123.456:6:2);
Значения типа Char и String выводятся в виде одного или последовательности символов. Значения типа Boolean выводятся в виде True или False. При выводе нескольких значений в одну строку возникает потребность отделять их друг от друга с помощью заданного числа пробелов. Для этого можно использовать элемент списка вывода вида - ’ ’:K – где К – коэффициент повторения количества необходимых пробелов Пример: Write(’X1=’,X1:8:3,’ ’:10,’X2=’,X2:8:3);
Writeln(B1,B2,…,Bn); Отличается от первого тем, что после вывода последнего значения курсор переводится в начало следующей строки экрана. Writeln; Выводит пустую строку. Задача 1. Вывести на экран фразу – «Моя первая программа» Решение: Program Lin1; Begin Writeln(’Моя первая программа’); End.
Задачи: 1.Какие из следующих последовательностей символов являются операторами вывода: а) Write(X,Y); б)Writeln(X:Y:Z); в)Writeln г) Write(’Xx’,Xx,’Yy’,Yy); д)Writeln(1+2,3+4,Y/X); е) Writeln(’1+2’,’3+4’,’Y/X’); ж)Writeln(X:=Y,Z); 2.Создать на экране рисунок (использовать любые символы).
Оператор ввода Оператор ввода значений с клавиатуры имеет вид: Read(A1,A2,…,An); - где A1, A2,…,An – имена переменных. Следует иметь в виду, что вводимые значения не могут быть логическими. При выполнении этого оператора компилятор приостанавливает свою работу, программист должен набрать значения переменных перечисляемых в списке ввода, учитывая следующие особенности: - при вводе значений символьных переменных каждый очередной введенный символ становится значением очередной переменной; - числовые значения должны разделяться пробелами или нажатием клавиши ввода; - при вводе значений строковых переменных последний вводимый символ полностью включается в значение строковой переменной, поэтому невозможно в одном операторе ввести значение двух строковых переменных так, как нет символа разделяющего одно значение от другого. - Readln(B1,B2,…,Bn); Отличается от первого тем, что после ввода последнего значения курсор переводится в начало следующей строки экрана.
Readln; Ждет нажатия клавиши ввода.
Задача 2. Составить программу – «Диалог с компьютером» Решение: Program Lin2; Var A:String; Begin Writeln(’Я компьютер, а как зовут тебя?’); Readln(A); Writeln(’Очень приятно, ’,A); End.
Задача 3. Даны числа A,B,C. Переприсвоить их значения следующим образом: A B C Исходные данные: A=10, B=15, C=20 Pезультат: A=20, B=10, C=15 Решение: Program Lin3; Var A,B,C,D:Integer; Begin Writeln(’Введите значения переменных A, B, C’); Read(A,B,C); D:=C; C:=B; B:=A; A:=D; Writeln(’A=’,A,’B=’,B,’C=’,C); End. Задачи: 1. Какие из следующих последовательностей символов являются операторами ввода: а) Write(X,Y); б) Readln(X+Y,Y); в)Read(X,Y); г)Read(’Xx’,Xx,’Yy’,Yy)? 2. Даны числа A,B,C,D. Переприсвоить их значения следующим образом: A B C D (составить программу). 3. Какие числа будут выведены в результате выполнения последовательности операторов: Read(X); X:=X Mod 2; X:=Sqrt(X+1); Write(X,X*2); если в качестве исходного данного использовалось число: а) 2; б)1.2; в)6; г)5.4? 4. Вычислить расстояние между двумя точками с данными координатами X1,Y1 и X2,Y2. 5. На предприятии 2-м рабочим выделена премия (N руб). Разделить эту премию между рабочими в зависимости от стажа их работы на предприятии (прямо пропорциональная зависимость). Стаж вводится с клавиатуры. 6. По стороне основания и боковому ребру определить полную площадь поверхности правильной призмы: а) треугольной; б) четырехугольной; в)шестиугольной. 7. Продолжить программу –«Диалог с компьютером». 8. Дано целое число А. Не используя никаких функций и никаких операций кроме умножения получить: а) А8 за три операции; б) А10 за четыре операции; в) А7 за четыре операции; 9. Дано число Х. Вычислить выражение 2х4-3х3+4х2-5х+6.Позаботиться об экономии операций.
Не нашли, что искали? Воспользуйтесь поиском:
|