Смекни!
smekni.com

Лекции по информатики 2 (стр. 16 из 43)

Та же самая программа на структурном Бейсике:

Программа Алгоритм

' поздравление ' алг «поздравление»

сls ' нач

nm$ = «Оля» ' пт$ = «Оля»

dn$ = «с днем рождения» ' dn$ = «с днем рождения»

print «Дорогая» + nm$ ' вывод «Дорогая» + пт$

print «Поздравляю тебя» ' вывод «Поздравляю тебя»

print dn$' вывод dn$

print «Желаю счастья» ' вывод «Желаю счастья»

print «Твой папа» ' вывод «Твой папа»

end' кон

Результатом выполнения на компьютере и той и другой программы будет появление на экране одного и того же текста:

Дорогая Оля

Поздравляю тебя

с днем рождения

Желаю счастья.

Твой папа.

В системе программирования QBasic на IBM PC программы могут записываться в обоих формах - с нумерацией и без нумерации строк. В версиях Бейсика для ЭВМ, не имеющих операционных систем, строки должны быть пронумерованы.

Основными свойствами программ для ЭВМ как одной из форм описания и разновидностей машинных алгоритмов является их выполнимость, мобильность, эффективность и правильность.

Выполнимость программ - возможность их выполнения на дан­ном типе компьютеров. Возможность выполнения зависит от типа ЭВМ, наличия внешних устройств, надлежащего объема оперативной и внешней памяти, операционной системы и системы программиро­вания.

Мобильность программ - возможность переноса программы на другой тип ЭВМ. Примером мобильности является возможность выполнения в системе структурного программирования Qbasic про­грамм, записанных на традиционном Бейсике.

Эффективность программ - обычно это минимальность времени их выполнения на ЭВМ. Однако, если созданные программы содержат ошибки, то утверждения об их эффективности не имеют никакого смысла.

Правильность программ - правильность результатов, получаемых с их помощью.

Правильность результатов определяется соответствием докумен­тации или другими описаниями программ.

Программы содержат ошибки, если их выполнение на ЭВМ при­водит к возникновению отказов, сбоев или неправильных резуль­татов. От использования программ, содержащих ошибки, следует отказываться.

Основные типы операторов языка Бейсик:

- операторы ввода-вывода;

- графические операторы;

- присваивания;

- обращения к функциям;

- описания данных;

- управляющие операторы;

- обращения к подпрограммам.

Примеры операторов ввода-вывода на экран.

Оператор Действие

print «привет» вывод («привет»)

print «корень=»; х вывод («корень =», х)

input «a=»; а запрос («а=», а)

input nввод (п)

locate st, psпозиция (st,ps)

Примеры графических операторов:

ОператорДействие

pset(x,y),cточка(х,у),с

line(x,y)-(u,v),cлиния(х,у)-(и, v), с

line(x,y)-(u,v),c,bрамка(х,у)-(и,у),с

circle(x,y),r,cокружность(х,у),r

circle(x,y),r,c,al,a2дуга(х,у),r,с,а1,а2

paint(x,y),cзакраска(х,у),с

сlsочистка_экрана

screen 0,0 текстовый_экран

screen 1,0 графический_экран1

screen 2,0 графический_экран2

Примеры операторов присваивания.

ПрисваиванияДействиеРезультат

а = 0 а := 0 а = 0

b = а + 1 b := a + 1 b = а + 1 = 1

с = 2*b + 3 с := 2b + 3 с = 2 b + 3 = 5

d = b/c d:= b/c d = -b/c = 0.2

b = b + 1 b:= b + 1 b' = b + 1 = 2

b = b + 1 b:= b + 1 b" = b' + 1 = 3

Математические функции с примерами обращения.

ФункцияСмыслПримерРезультат

rnd- случайное число от 0 до 1rnd

int (x)- целая часть числа хint (5/3) 1

abs (x)- абсолютное значение числаabs (-2) 2

sqr (x)- квадратный корень числаsqr (16)4

sin (x)- синусsin (0)0

cos (x)- косинусcos (0)1

tan (x)- тангенсtan (0)0

atn (x)- арктангенсatn (0)0

exp (x)- экспонента ехр (0)1

log (x)- логарифм натуральныйlog (1) 0

К числу управляющих операторов можно отнести условные опе­раторы, имеющие следующие форму записи и смысл:

Условный оператор:Действия ЭВМ:

if <условие> then <оператор>если <условие> то <действие>

где <оператор> - это один или несколько операторов, разделяемых двоеточием, а <условие> - это некоторое логическое условие, при соблюдении которого будут выполняться указанные операторы.

Примеры записи условии - простых и сложносоставных:

Условие:Запись:

х = у х = у

х ¹ у х <> у

х > у х > у

х < у х < у

х £ у х <= у

х ³ у х >= у

не (х = 1) not (x = 1)

(х > 0) и (у > 0) (х > 0) and (у > 0)

(а = 0) или (b = 0) (а = 0) or (b = 0)

Простейшим примером программы с условными операторами является реализация алгоритма «выбор из меню»:

Сценарий «Выбор из меню»

Меню: <результат >:

1. Новый год 1 января

2. День рождения 1 декабря

3. День знаний 1 сентября

выбор=? <n>

<результат >

Алгоритм и программа выбора по меню, соответствующие этому сценарию:

Алгоритм Программа

алг «выбор по меню»' выбор по меню

начcls

вывод («Меню») print «Меню:»

вывод («I. Новый год») print («1. Новый год»)

вывод («2. День рождения») print («1. День рождения»)

вывод («З. День знаний») print(«3. День знаний»)

запрос («выбор=», п) input «выбор=», n

если п = 1 то if n = I then

вывод («1 января») print «1 января»

если п = 2 то ifn = 2 then

вывод («1 декабря») print «1 декабря»

если п = 3 то if n = 3 then

вывод («1 сентября») print «1 сентября»

кон end

Правильность диалоговых алгоритмов и программ можно оценить сопоставлением их со сценарием диалога. Любое отклонение резуль­татов выполнения алгоритмов и программ от сценария диалога - это ошибка. Диалоговый алгоритм - правильный, если результаты их выполнения строго соответствуют сценарию.

Сравнение текста программы с описанием алгоритма, а затем ал­горитма со сценарием диалога подтверждает полное соответствие программы заданному сценарию «выбор по меню». Таким образом, правильность программ может проверяться через правильность реа­лизованных в них алгоритмов.

В о п р о с ы

1. Что такое программа?

2. Что такое язык программирования?

3. Каковы основные свойства программ?

4. Какие есть графические операторы?

5. Какие есть операторы ввода- вывода?

6. Какие есть математические функции?

7. Как записываются логические условия?

З а д а ч и

1. Составьте сценарий, алгоритм и программу с выбором из меню:

а) поздравления с Новым годом;

б) поздравления с Днем рождения;

в) регистрации даты рождения;

г) регистрации фамилии и имени.

2. Составьте сценарий, алгоритм и программу для следующих вычис­лений с выбором из меню:

а) расчета сдачи за товар;

б) расчета остатка от прибыли;

в) пересчета рубль/доллар;

г) расчета остатка времени до 18.00.

3. Составьте сценарий, алгоритм и программу рисования с выбором из меню изображений:

а) российского флага; г) украинского флага;

б) шведского флага; д) французского флага;

в) японского флага; е) британского флага.

4. Составьте сценарий, алгоритм и программу с выбором из меню следующих вычислений:

а) времени движения по длине пути и скорости;

б) длины пути по времени и скорости движения;

в) средней скорости по времени и длине пути.

5. Составьте сценарий, алгоритм и программу рисования следующих изображений с выбором из меню:

а) домика; г) автомобиля;

б) дерева; д) цветка;

в) рыбы; е) птицы.

4.3. Основы структурного программирования

Алгоритмизация - это составление алгоритмов для последующей реализации в виде программ для ЭВМ. Знание и использование сис­тематических методов превращают алгоритмизацию - в строгую дисциплину, позволяющую составлять программы на ЭВМ без ошибок.

Порядок составления программ:

задача ¾

алгоритмы

программа