|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Основные операторы языкаВвод-вывод данных и основные операторы языка Пример: написать программу вычисления суммы двух чисел.
Program Summ; Uses Crt; Var a, b, s: integer; Begin Write (‘Введите а’); Readln (a); Write (‘Введите b’); Readln (a); S:=a+b; Write (‘Сумма чисел = ’, s); End.
Write – выводит на экран текст. Read – информация размещается в памяти компьютера, переменной будет присвоено значение вводимое с клавиатуры. Суффикс ln переводит курсор на новую строку.
Основные операторы языка Условные операторы – используются в программе, при необходимости задать некоторое условие: Оператор if If <условие> then If <условие> then If <условие1> then Begin Begin Begin Оператор1; Оператор1; Оператор1; … … … Оператор n; Оператор n; Оператор n; End; End End Else Else Begin … End; If <условие2> then Begin … End Else оператор;
Оператор case Case <переменная> of Значение1: Begin … End; Значение2: Begin … End; … ЗначениеN: Begin … End Else оператор; End;
Пример: Uses Crt; Var a, b, n: integer; S: real; Begin Write (‘Введите а’); Readln (a); Write (‘Введите b’); Readln (b); Write (‘Введите n’); Readln (n); Case n of 2: s:=a; 4: s:= a+b; 6: s:= sqr (abs(a)); 8: s:= sqrt(sin(b)) Else write (‘Не верное значение n’); End; end. Циклические операторы – используются в программе при необходимости задать цикл: Оператор for For <переменная>:= <начальное значение> to <конечное значение> do Down to Begin … End;
Пример: посчитать сумму чисел от 1 до 50.
Var i, s: integer; Begin S:= 0; For i:=1 to 50 do S:=s+i; Write (‘Сумма = ’, s); End.
Оператор Repeat Repeat Var i, s: integer; Оператор1; Begin … S:= 0, i:=0; операторN; Repeat until <условие>; i:=i+1; s:=s+i; until i<=50; Write (‘Сумма = ’, s); End.
Оператор While While <условие> do Var i, s: integer; Begin … End; Begin S:= 0, i:=0; While i<=50 do Begin i:=i+1; s:=s+i; end; Write (‘Сумма = ’, s); End. Цикл называется вложенным, если он содержит при себе еще один цикл. Тогда цикл выполняется в следующей последовательности: сначала полностью выполняется внутренний цикл, а затем внешний изменяется на один шаг.
Примеры: program lr1_1_1; { Даны два числа a и b. Получите число maxab, равное наибольшему из исходных. Если исходные числа равны, то maxab положить равным любому из них. } Uses crt; Var a,b,maxab:real; Begin clrscr; write (‘Введите два числа через пробел ’); readln(a,b); if a>=b then maxab:=a Else maxab:=b; writeln(‘ a= ’,a:8:2, ’ b= ‘,b:8:2, ’ maxab= ‘,maxab:8:2); readkey; end.
Основная часть программы, соответствующая второй схеме будет выглядеть так.
maxab:=a; if maxab<b then maxab:=b;
С точки зрения времени выполнения программы первый вариант предпочтителен, но на практике приходится пользоваться обоими. Например, если необходимо найти наибольший из трех, то какой бы вариант не был применен для нахождения наибольшего из первых двух, этот наибольший нужно сравнить с третьим, т.е. возникнет необходимость во втором варианте.
Дана оценка по десятибалльной системе. Получить ее эквивалент по пятибалльной системе. Предполагается, что между системами имеется следующее соответствие: 10-балльная 5-балльная 0 1 1-3 2 4-5 3 6-8 4 9-10 5 Данную задачу можно решить и с помощью структуры «ветвление» (оператора if…then…else), но удобней воспользоваться структурой «выбор». program lr1_3_1; Uses crt; Var oc10,oc5:byte; Begin clrscr; write('Введите оценку по десятибалльной системе '); readln(oc10); case oc10 of 0: oc5:=1; 1..3: oc5:=2; 4,5: oc5:=3; 6,7: oc5:=4; 8..10: oc5:=5 Else Begin writeln(oc10, ' -такой оценки нет. '); readkey; exit; {Выход из программы} end; end; writeln(‘Оценке ’,oc10, ' по 10-балльной системе соответствует ', oc5, ' по 5-балльной'); readkey; end.
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.007 сек.) |