русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Величина. Команды присваивания, ветвления и выбора.


Дата добавления: 2015-06-12; просмотров: 1119; Нарушение авторских прав


1. Что называется алфавитом языка?

2. Дайте определения величины, выражения, оператора языка программирования.

3. Опишите общую структуру программы на языке Паскаль. Как называются основные части программы?

4. Как по назначению разделяются величины в программе? Дайте определения.

5. Какие типы величин вы знаете? Приведите примеры.

6. Есть ли разница (с точки зрения языка Паскаль) между числами 100 и 100.0, 20 и 2Е+1?

7. По какому признаку (величине или форме записи) отличаются целые числа от вещественных?

8. Расскажите о форме представления целых чисел в ПЭВМ.

9. Какое выражение может быть идентификатором на языке Паскаль?

10.Дайте определение арифметического выражения.

11.Сформулируйте правила вычисления арифметических выражений.

12.Расскажите о пользовательских типах данных.

13.Объясните назначение и правила записи команды присваивания.

14.Объясните правила исполнения команды присваивания.

15.Какие ограничения в зависимости от типов величин накладываются при записи команды присваивания?

1. ABC 5. A.B.C. 9. A 1 13. ABC_D 17. 10A
2. 1ABC 6. A 10. AB1.C 14. …A 18. 1998
3. A1BC 7. 1 11. .ABC 15. H2SO4 19. H2SO4
4. A B C 8. ABC123 12. AB? 16. 23-42-17 20. “ABC”

16.Укажите, какие из данных выражений компьютер не воспримет как числа:

-1.5E-7 6. 6.E-3 5.0E-4
E-05 0.6 6E-3 5.0E
70E2 .264 6E3 5.1E12

17.Можно ли утверждать, что в Паскале значение выражения (1/3)*3-1=0?

18.Определите, верна ли запись команды:

var x, y: real;
g: integer;
b: boolean; a, c: string;

(1) g:=x+y; (5) x/y:=x; (9) "Овод":=a; (13) b:=3<5;
(2) b:=12; (6) x:=x/y; (10) c:=Война и мир; (14) g:=x*x;
(3) x:=g; (7) g:=x-y; (11) x:=g-b; (15) b:="true"
(4) x:=c; (8) a:=a+1; (12) b:=x+y; (16) b:=(2=5) or (6>3);



19.Найдите ошибки в записи команд.

(1). Var x,y:real; Begin Y:=’125’; X+2:=y; End. (2). var x,y:integer; begin x:=25; y:=x/5; end. (3). var x,y:char; begin x:=’1’; y:=’qwert’ y:=y+x; x:=y-x; end (4). var 3x; y_5:integer; begin 3x:=x*y_5; y_5:=sin(3x); end.
(5). var x:char;y:string; begin x=’a’; x:=x+x; y:=3*x; end. (6). var x,y:string; beggin x:=’ток’; y:=-x; end. (7). var w,q:boolean; begin w:=’true’; q:=’фальшь’; end; (8). var x:real;y:integre; s:boolean; begin x:=5; y:=5; x:=x+y; y:=x-y; s:=y; end.
(9). var x:y:real; begin x:=2,3; y:=1\x; writelne(y:5:10); end. (10). Var x,y:real; Begin read(x); y:=x mod 3; end. (11). var s,p:integer; bgin readln(x); y:=2*x+123; writeln(y:2:3);end. (12). vat x,y,z,a,x,w:real; beging x:=2e+1.2; y:=2x/5; wrietln(xy);end,

20.Определите типы величин x, y и z, входящих в каждую серию команд.

(1). Readln(x,y); z:=x+y; y:=2*x+z; (2). Readln(x,y); z:=x+y; z:=x+z; (3). readln(x,y); z:=x/y; y:=x*z; (4). readln(x,y); z:=x+y; z:=x-z; (5). readln(x,y); z:=x+y+t; y:=z;

21.Найдите значение y после исполнения серии команд:

(1) x:=1; y:=2; x:=x+y; y:=x-y; x:=x*x; y:=x; (2) x:=1; y:=2; z:=3; x:=y; y:=z; z:=x+y; y:=z; (3) x:= -1; y:=2; y:=x*y; y:=y*y; x:=y-1; y:=x-y;
(4) x:=2; y:=3; x:=y-x; x:=x*x; y:=x; y:=y-x; (5) x:=0; y:=1; z:=2; y:=x-1; z:=y; x:=y; y:=x+y+z; (6) x:= -1; y:=2; z:=3; x:=y+1; y:=y*x; z:=y; y:=y*z;
(7) y:=4; y:=y+1; y:=y*4; y:=20-y; y:=12-y; y:=y*y-100; (8) y:=2; y:=y+4; y:=y-4*y; y:=y+y/3; y:=y+22; y:=y*y; (9) y:=2; y:=y-y*3; y:=y-2; y:=y-y/3; y:=y+24; y:=y/2;
(10) y:=6; y:=y*y; y:=y-12; y:=y+y/2; y:=y-16; y:=y/5; (11) y:=0; y:=y+7; y:=y*y-4; y:=y+3; y:=y/8+2; y:=y/4; (12) y:= -1; y:=y*y; y:=y+5; y:=y-2; y:=y*y-11; y:=y*2;
(13) y:='12'; y:='34'+y; y:=y+'56'; y:=y+'0'; (14) y:='09'; y:=y+'87'; y:=y+y; y:='-1'+y; (15) y:='1'; y:=y+y+'0'; y:='01'+y; y:='0'+y;
(16) y:=2; y:='1'+y; y:=y+'2'+y; y:='11'+y; (17) y:='10'; y:=y+'1'; y:='0'+y+'0'; y:='1'+y; (18) y:='3.'; y:=y+'4.'; y:='2.'+y; y:='1.'+y+'5';
(19) y:='н'; y:='ба'+y; y:=y+'ка'; (20) y:='н'; y:='ба'+y; y:='ка'+y; (21) y:='с'; y:='со'+y; y:='на'+y;
(22) y:='со'; y:=y+'с'; y:=y+'на'; (23) y:='те'; y:='ка'+y; y:=y+'ра'; (24) y:='ди'; y:='ар'+y; y:='г'+y+'на';

22.Каково было значение величины x, если после исполнения серии команд получилось y=5?

(1). z:=x*4 y:=24-z y:=5+y (2). z:=x/4 y:=2-z y:=5*y (3). z:=x*2 y:=5+z y:=6/y+3 (4). z:=x*4 y:=12-z y:=25-y (5). z:=x*4 y:=12+z y:=15/y (6). z:=x*4 y:=12+z y:=20/y

23.При каком начальном значении переменной после исполнения серии команд получится указанный ответ:

(1) x:=x-1; x:=x/3; x:=x+4; Ответ: a) x=1 b) x=-1 c) x=0 d) x=4 (2) y:=y+1; y:=y*2; y:=y-7; Ответ: a) y=3 b) y=-1 c) y=0 d) y=1 (3) y:=y-4; y:=y*3; y:=y+2; Ответ: a) y=5 b) y=-5 c) y=0 d) y=11 (4) y:=y/2; y:=y+4; y:=y-6; Ответ: a) y=6 b) y=-6 c) y=12 d) y=0
  (5) y:=y+'ло'+y; y:=y+'л'; Ответ: y='колокол'   (6) y:=y+'т'+y; y:=y+'к'; y:=y+'а'; Ответ: y='атака'   (7) y:=y+'к'+y; y:='с'+y; y:=y+'л'; Ответ: y='сокол'   (8) y:=y+y; y:=y+'а'; y:=y+'т'; Ответ: y= 'арарат'
(9) y:=y+'01'+y+'1'; y:=y+'2'; y:='20'+y+'0'; Ответ: y='20101120' (10) y:=y+'3'+y; y:='2'+y+'4'; y:='1.'+y; Ответ:y= '1.2.3.4' (11) y:=y+'3'+y; y:='2'+y+'4+'; y:='1+'+y+'5'; Ответ: y='1+2+3+4+5'
(12) y:='0'+y+'1'+y; y:=y+'01'; y:='1'+y; Ответ:y='101111101' (13) y:=y+'g'+y; y:='t'+y+'r'; y:='in'+y; Ответ: y='integer' (14) y:='b'+y+y; y:=y+'le'; y:=y+'an'; Ответ:y='boolean'
           

24. Найдите значение выражения.

15-3*2= 110-10/5= 18-6/2= 2.8е2-0.08е3= 0.123е4-3.2е2=
18/3*2= 20/10*2= 20/5*4= 6е4*0.5е-4+10= 4.0е2*0.25е-2-1=
5.8е2-0.08е4= 8е2/0.16е3-1= 16-3*5= 8.9е3-0.09е5= 5.036е1-6е-2=
15/3*5= 10-2/4= 21-3/3= 4.50е4/0.3е-4-1= 2.50е-4/5е-6+1=
18-3/2= 12/4*3= 16/8*4= 7.50е4/0.15е5+1= 0.3е4-0.025е3=

24.Поменяйте значения переменных A и B:

а) с помощью вспомогательной переменной;
б) без использования вспомогательной переменной.

25.Поменяйте значения переменных M, N, P, T так, чтобы M приобрела значение T, N - M, P - N, T - P:

а) с помощью вспомогательной переменной;
б) без использования вспомогательной переменной.

26.Перечислите виды условий. Как записывается условие на Паскале?

27.Перечислите операции отношения и логические операции. Назовите двуместные и одноместные логические операции.

28.Дайте определение логического выражения.

29.Сформулируйте правила вычисления логических выражений.

30.Объясните назначение и правила записи команды ветвления.

31.Объясните правила исполнения команды ветвления.

32.Объясните назначение и правила записи команды выбора.

33.Объясните правила исполнения команды выбора.

34.Сравните возможности команды выбора на алгоритмическом языке и Паскале.

35.Как надо поступать в случае, если в серию команд входит более одной команды?

36. Найдите синтаксические ошибки в записи команд:

(1). if 5 then S:=S+5;

(2). if B then x:=y; else B:=x;

(3). if x=y then x:=1; else x:=0;

(4). if (A=B) and P then P:=P+12;

(5). if (A<B) or C then C:='false';

(6). if P then P:='a=b';

(7). if x>y then begin x:=y else x:=z end;

(8). if C then A:=0 else C:=2;

(9). if x="false" then write ("ложь") else x:=true;

(10). if X or Y then begin write (Z) else write (T) end;

(11). if x<>y then else x:=y;

(12). if y=z then end;

(13) if x>0 then y:=x else y:=-x; end; (14) case n of 1..5: y:=3; 6..9: y:=4; 10: y:=5;
(15) if c>30 then begin y:=’жара’; else y:=1-t end; (16) case k of 1.51: y:=2; else 1.73: y:=3 end;

38. Найдите значение y после исполнения серии команд:

(1). x:=4;y:=5; if x>0 then if y<8 then y:=sqr(x) else y:=2*x+1 else y:=0; (2). N:=7; case N of 1..10: y:=1; 7: y:=2; end; (3). x:=-4;y:=5; if x>0 then if x>0 then if x<8 then y:=sqr(x) else y:=2*x+1;
(4). x:=12;y:=5; if x>0 then if x<8 then y:=sqr(x) else y:=2*x+1; y:=0; (5). x:=8; if x>9 then y:=2*x+1 else if x<7 then y:=0 else y:= sqrt(10-x); (6). x:=5; if x>0 then y:=2*x+1 else if x<8 then y:=sqr(-x) else y:=0;

40. Перепишите команду ветвления через команду выбора: (x и t-целые числа в диапазоне от 0 до 70).

(1). if (t>=16) and (t<25) then writeln ('норма') else if (t>=26) then writeln ('повышена') else writeln ('понижена'); (2). if (x>=10) and (x<37) then y:=2*x+1 else if (x>=0) and (x<55) then y:=x*x*x else y:=0;

41.Перепишите команду выбора через команду ветвления.

(1). case t -273..0: o:='лед'; 1..100: o:='вода'; 101..200: o:='пар'; end; (2). case k of 10..20: f:=sqrt(k-5); 0..150: f:=sqr(k+1) else f:=sqrt(abs(k)) end;

42. Определите, при каком значении аргументов после исполнения фрагмента программы получится указанный ответ (для каждого случая указать все решения).

(1). if (a=0) and (b>0) then writeln ('x-любое число') else if (a=0) and (b<=0) then writeln ('решений нет') else if (a<0) then writeln ('х<',-b/а:5:2) else if (a>0) then writeln ('х>',-b/а:5:2);   (2). if (x >=-1) and (x <=3) then y:=x*2 else if (x >=-4) and (x<5) then y:=x*x-10 else if (x >=5) then y:=x else y:=1;
ОТВЕТ:1. x<5 2. решений нет 3. 3. x>-3 ОТВЕТ:1. y=6 2. 2. y=-25 3. 3. y=1

43. Как работает при разных значениях аргументов следующий фрагмент программы?

d:=b*b-4*a*c;

if d<=0

then writeln('Действительных корней нет')

else x1:=(-b-sqrt(d))/2/a; x2:=(-b-sqrt(d))/2/a;

writeln('x1=',x1:5:2,' x2=',x2:5:2);

 

44.Перепишите команду ветвления без составных условий.

(1). if (t>=36) and (t<37) then writeln ('норма') else if (t>=37) and (t<42) then writeln ('повышена') else if (t>=35) and (t<36) then writeln ('понижена') else writeln ('ошибка'); (2). if (a=0) and (b=0) then writeln ('x-любое число') else if (a=0) and (b<>0) then writeln ('решений нет') else if (a<>0) then writeln ('х=',b/а:5:2);

 

(3). if (x >=-6) and (x<7) then y:=x+2 else if (x >=0) and (x<12) then y:=-x*x else if (x >=5) and (x<26) then y:=x else y:=1; (4). if (x>=0) and (x<7) then y:=2*x+1 else if (x>=-7) and (x<25) then y:=x*x*x else if x>=35 then y:=1-x else y:=0;
(5). if (a=0) and (b>0) then writeln ('x-любое число') else if (a=0) and (b<=0) then writeln ('решений нет') else if (a<0) then writeln ('х<',-b/а:5:2) else if (a>0) then writeln ('х>',-b/а:5:2);  
     

Циклы

1. Объясните назначение команды повторения.

2. Назовите различные формы команды повторения на Паскале.

3. В каких случаях используется оператор FOR?

4. Какие формы записи оператора FOR существуют?

5. Как происходит работа оператора FOR?

6. Как могут располагаться друг относительно друга различные циклы внутри одной программы?

7. Какими должны быть идентификаторы параметров вложенных циклов?

8. Для каких значений параметра исполняется серия команд цикла с параметром?

9. Какие ограничения на начальное, конечное значение параметра и величину шага существуют на языке Паскаль?

10. Сколько раз исполнится тело цикла FOR в зависимости от формы оператора, начального и конечного значений:

  НЗ<КЗ НЗ=КЗ НЗ>КЗ
for to      
for downto      

11. Как организовать цикл с помощью оператора REPEAT?

12. Как организовать цикл с помощью оператора WHILE?

13. В чем отличие и сходство циклов REPEAT и WHILE?

14. Сравните работу циклов FOR, WHILE, REPEAT по следующим параметрам:

a) обязателен ли параметр цикла, и каким он должен быть;

b) требуется ли начальная установка параметра цикла;

c) возможно ли изменение параметра цикла в теле цикла;

d) в каком случае цикл завершается, и как определяется количество повторов;

e) может ли цикл не выполнится ни разу;

f) исполняется ли цикл всегда хотя бы один раз;

g) обязательно ли наличие операторных скобок в составном операторе тела цикла.

15. Переписать цикл FOR через WHILE (с положительным шагом).

16. Переписать цикл FOR через WHILE (с отрицательным шагом).

17. Переписать цикл FOR на алгоритмический язык:

17.1. с положительным шагом.

17.2. с отрицательным шагом.

18. Переписать цикл REPEAT на алгоритмический язык.

19. Переписать цикл WHILE через REPEAT.

20. Переписать цикл REPEAT через WHILE.

21. Переписать команду повторения "ДЛЯ" алгоритмического языка через FOR на Паскаль:

21.1. с положительным шагом.

21.2. с отрицательным шагом.

21.3. в общем виде.

22. Какие команды повторения на языке Паскаль и в каком случае не исполняются ни разу?

23. Сколько раз исполнится данная серия команд:

(1). m:=0; for i:=20 downto 2 do m:=m+1; (2). x:=1; repeat y:=sqr(x); x:=x+2; until x>=25; (3). t:=-10; while t<0 do begin y:=sqr(x); t:=t+1; end; (4). p:=1; for i:=10 downto 8 do p:=p*2;
(5). x:=1; y:=0; for i:=1 to x do for j:=5 downto y do write(i+j); (6). i:=1; a:=i<=2; p:=false; while a or p do begin i:=i+1; a:=i<=2; p:=not(p) end;
(7). b:='123'; repeat b:=b+b; until true;   (8). a:= -1; repeat a:=a+1; until a<>0;

24.При каком последнем значении будет исполняться цикл:

(1). for i=10 downto 8 do (2). g:=0; while g<0 do g:=g-1; (3). L:=13; repeat L:=13/2; until L>6;

25. Каково будет значение параметра цикла после его окончания:

(1). n:=2; for i:=10 downto 1 do n:=n+3; (2). y:=-1; repeat h:=sqr(y); y:=y+1; until y>=16; (3). u:=-25; while u<=0 do begin r:=sqr(u); u:=u+5; end;
(4). w:=1; for i:=8 to 8 do w:=w*2-1; (5). for c:='a' to 'z' do write(c);   (6). i:=1; repeat x:=10-i; i:=i-4; until i<-8;
(7). i:=1; a:=i<=2; p:=false; while a or p do begin i:=i+1; p:=not(p) end;   (8). y:=4<5; x:=-2; repeat x:=sqr(x); y:=not(y); until y;  

26. Найдите значение y после исполнения серии команд:

(1). y:=1; for i:=14 downto 2 do y:=3*y-2; (2). y:=12; repeat y:=y/2+3; until y>0; y:=y/3; (3). y:=1; while (y>12) and (y<25) y:=sqr(y)-5;
(4). readln(b); y:=56; repeat q:=b+10 y:=y/8; until q>b; (5). y:=8; w:=true; while (y>0) and w do begin if not(y mod 2=0) then w:=not(w) else y:=y/2; end; (6). y:=45; w:=false; while not(w) do begin if y mod 3=0 then y:=y/3 else w:=true; end;
(7). f:=256;y:=f; for i:=5 to trunc(f/32) do y:=sqrt(y); (8). s:=’’;y:=-2; repeat if y>5 then s:=’big’ else y:=y+2; until s<>’big’; (9). soob:=true;y:=0 for i:=0 to 5 do begin if soob then begin soob:=false; y:=y+5; end; if not(soob) then begin soob:=true; y:=y+2; end; end;

27. Найдите ошибки в записи серии команд:

(1). r:=0; for i:=1 to n do к:=k+i end; (2). q:=0; for i:=1 to n if q<0 then begin q:=q+i end;
(3). p:=6; for j:=9 to 8 do begin p+1:=i+1 end; readln(‘p=’,p); (4). q:=10;s:=’’; while q<>0 do s:=q*5-1; q:=q-1; writeln(s);
(5). n:=0;q:=true; while i<=5 and q do if i nod 2 =3 then trunc(i/2)=i/2 then q:=not(q);i:=0; else q:=false;i:=i-1; (6). readln(a); repeat; a:=a/2; until if a<2;
(7). writeln(q) y:=t-8; q:=y+t-q; until q<y or t>y; (8). for i=1 to p/2 do q:=q+2;
(9). q:=10; q:=(q+25)/5; for p:=1 to q do write(‘*’);
(10). t:='ура' for k to 1 do t:=t+'!'; (11). S:='1'; for i:=1 to S do write(S);
(12). S:=0 or S:=1; while (S=0) end (S<’1’) begin k:=k+1; S:=S-1; (13). a:= -1; b:=1; repeat: if a<1 then b:=b-1 if a>1 then b:=b+1; until: a>5
(14). for ch:=’a’ to ‘z’ S:=ch*2-ch; write(S); (15). while i<7 do begin if i:=1 then i:=4-x else i:=’8’;

28. Определите, что делает данный фрагмент программы:

(1). S:=0; n:=0; for i:=1 to 25 do if i mod 3 =0 then begin n:=n+1; S:=S*(n-1)/n+i/n end; (2). for i:=1900 to 2000 do if (i mod 4=0) and (i mod 100<>0) or (i mod 400=0) then write(i);
(3). while m<>n do if m>n then m:=m-n else n:=n-m; write(m); (4). write('m='); read(m); n1:=1; n2:=1; repeat n:=n1+n2; n2:=n1; n1:=n; until n>m; write(n);
(5). f:=false; i:=1; write('n='); readln(n); repeat write('m='); readln(m); i:=i+1; if m<n then f:=true else n:=m; until f or (i=100); if f then writeln('нет') else writeln('да'); (6). k:=0; i:=0; f:=true; repeat write('n='); readln(n); i:=i+1; if (n<0) and f then k:=k+1 else f:=false; until (i=50) or not(f); writeln(k);
(7). write('n='); readln(n); m:=0; for i:=1 to n-1 do if n mod i=0 then m:=m+i; if m=n then write('да') else write('нет');  

29. Напишите фрагмент программы для вычисления:

(1) суммы чисел, обратных к первым N натуральным числам;

(2) суммы квадратов чисел от 1 до n;

(3) n!;

(4) (2n+1)!!

(5) (2n)!!

(6) произведения (a-n)(a-2n)…(a-kn);

(7) суммы a-1+a-2+a-3+…+a-n;

(8) суммы a-1+a-2+a-4+a-8+…+



<== предыдущая лекция | следующая лекция ==>
Бинарный поиск (1 балл) | Массивы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.008 сек.