320 likes | 591 Vues
Найти сумму цифр двузначного числа. Дано: chislo Найти: cifra Связь: cifra= (chislo div 10) +(chislo mod 10). начало. chislo. Cifra := chislo div 10. Cifra := cifra+chislo mod 10. cifra. конец. Var chislo, cifra: byte; Begin Write(‘ Введите число =‘); ReadLn(chislo);
E N D
Найти сумму цифр двузначного числа • Дано: chislo • Найти: cifra • Связь: cifra= (chislo div 10) +(chislo mod 10)
начало chislo Cifra:=chislodiv 10 Cifra:=cifra+chislomod 10 cifra конец
Var chislo, cifra: byte; Begin Write(‘Введите число =‘); ReadLn(chislo); cifra:= chislo div 10; cifra:= cifra+chislo mod 10; writeLn(‘Сумма цифр числа - ’, cifra); end.
Составить свою визитную карточку.******************************** Иванов Сергей ** Пролетарская 74 кв. 55 ** Телефон 45-72-88 ********************************
Алгоритмы с ветвящейся структурой Разветвляющиеся алгоритмы 26 августа 2014 г.
Даны два числа; выбрать большее из них Дано: a, b. Найти с Связь с=
начало Ввод a, b a>b нет да c:=a c:=b Вывод с конец
Условием, по которому разветвляется алгоритм, является отношение неравенства a>b. • Такое отношение называется логическим условием. • Если оно справедливо, то результатом будет логическая величина «истина», выполнение алгоритма пойдет по ветке «да»; в противном случае логическое выражение примет значение «ложь», выполнение алгоритма пойдет по ветке «нет»
начало Ввод a, b a>b нет да c:=a c:=b Program srav; Var a,b,c: integer; begin write(‘a=‘); Readln(a); write(‘b=‘); Readln(b); If a>b then c:=a else c:=b; Writeln (‘Наибольшее ‘,c); end. Вывод с конец
Не полное ветвление начало Program srav; Var a,b,c: integer; begin write(‘a=‘); Readln(a); write(‘b=‘); Readln(b); c:=a; If b>c then c:=b; Writeln (‘Наибольшее ‘,c); end. Ввод a, b c:=a b>c нет да c:=b Вывод с конец
Оператор ветвления в Паскале If <логическое выражение> then <оператор1> else <оператор2> если <логическое выражение> то<оператор1> иначе <оператор2>
Program srav; Var a,b,c: integer; begin write(‘a=‘); Readln(a); write(‘b=‘); Readln(b); If a>b then c:=a else c:=b; Writeln (‘Наибольшее ‘,c); end. начало Ввод a, b a>b нет да c:=a c:=b Вывод с конец
Не полное ветвление начало Program srav; Var a,b,c: integer; begin write(‘a=‘); Readln(a); write(‘b=‘); Readln(b); c:=a; If b>c then c:=b; Writeln (‘Наибольшее ‘,c); end. Ввод a, b c:=a b>c нет да c:=b Вывод с конец
Операции отношения • < меньше • > больше • <= меньше или равно • >= больше или равно • = равно • <> не равно
Установить истинность выражение • 5>4 • 4<6 • 4+5 >= 3+6 • 7-4 <= 4-7
ЛОГИЧЕСКИЕ УСЛОВИЯ 26.08.2014
Логическое И • And (и) – логическая операция, которая принимает значение истины (выполняется условие), если входящие выражения выполняются • Пример: 0≤x<10 • Это означает (x>=0) и (x<10) на Паскале (x>=0) and(x<10)
Логическое И • Or (или) – логическая операция, которая принимает значение истины (выполняется условие), если хотя бы одно входящие выражения выполняется • Пример: x(- , -5](4, ] • Это означает (x<=5) или (x>4) на Паскале (x<=5) or(x>4)
Отрицание • Not – унарная операция, которая меняет значение истинности. • Пример: • X – положительное . X – неположительное • X>0 x<=0 или not(x>0)
Запишите логические выражения • X – положительное • X[1,3] • x(- , -5](4, ] • X – четное число • X – нечетное число • X – делиться на 5
Вычислить Дано: x Найти y Связь
Вычислить Если x<0 тоy:=x+1 иначе y:=2x Ifx<0 then y:=x+1 else иначе y:=2x
начало Ввод x x<0 нет да y:=x+1 y:=2*x Program fun; Var x,y:real; begin write (‘x=‘); realn(x); if x<0 then y:=x+1 else y:=2*x; writeln(‘при x=‘,x,’ y=‘,y); readln end. Вывод y конец
Домашнее задание • Найти наименьшее из двух чисел • Найти наибольшее из трех чисел y 1 -1 x 1
Pascal • USES Graph;VARGrDr, GrMd : integer;BEGINGrDr := detect;InitGraph( GrDr, GrMd, ‘c:\bp\bgi’ ); { теперь можно вызывать графические процедуры } . . . . . . . . .CloseGraph;END.
Line (X1, Y1, X2, Y2), где переменные X1, Y1, X2, Y2 типа Integer - рисуется линия от точки (X1, Y1) до точки (X2, Y2). • LineTo (X, Y),где переменные X, Y типа Integer - рисуется линия из точки, где находится в данный момент курсор в точку (X, Y). • LineRel (dX,dY),где переменные dX, dY типа Integer - рисуется линия из точки, где находится в данный момент курсор (X, Y) в точку (X+dX,Y+dY).