Информатика_всем
.pdfТеперь кодовые комбинации 1, 2, 3 переносятся в столбец «Шаг 3» в
неизменном виде, а код 0, который соответствует четырем «склеенным» вероятностям, уточняется дополнительным символом 0, 1, 2, 3.
Шаг 3 |
Код |
Шаг 4 |
Код |
|
|
|
|
5/20 (3) |
1 |
8/20 (4) |
0 |
|
|
|
|
4/20 |
2 |
5/20 |
1 |
|
|
|
|
3/20 |
3 |
4/20 |
2 |
|
|
|
|
2/20 |
00 |
3/20 |
3 |
|
|
|
|
2/20 |
01 |
|
|
|
|
|
|
2/20 |
02 |
|
|
|
|
|
|
2/20 |
03 |
|
|
|
|
|
|
Аналогичным образом на шаге 2 получается следующая таблица.
Шаг 2 |
Код |
Шаг 3 |
Код |
Шаг 4 |
Код |
|
|
|
|
|
|
4/20 (2) |
2 |
5/20 (3) |
1 |
8/20 (4) |
0 |
|
|
|
|
|
|
3/20 |
3 |
4/20 |
2 |
5/20 |
1 |
|
|
|
|
|
|
2/20 |
00 |
3/20 |
3 |
4/20 |
2 |
|
|
|
|
|
|
2/20 |
01 |
2/20 |
00 |
3/20 |
3 |
|
|
|
|
|
|
2/20 |
02 |
2/20 |
01 |
|
|
|
|
|
|
|
|
2/20 |
03 |
2/20 |
02 |
|
|
|
|
|
|
|
|
2/20 |
10 |
2/20 |
03 |
|
|
|
|
|
|
|
|
1/20 |
11 |
|
|
|
|
|
|
|
|
|
|
1/20 |
12 |
|
|
|
|
|
|
|
|
|
|
1/20 |
13 |
|
|
|
|
|
|
|
|
|
|
9
Аналогичным образом на шаге 1 получается следующая таблица.
Шаг 1 |
Код |
Шаг 2 |
Код |
Шаг 3 |
Код |
Шаг 4 |
Код |
|
|
|
|
|
|
|
|
3/20 |
3 |
4/20 (2) |
2 |
5/20 (3) |
1 |
8/20 (4) |
0 |
|
|
|
|
|
|
|
|
2/20 |
00 |
3/20 |
3 |
4/20 |
2 |
5/20 |
1 |
|
|
|
|
|
|
|
|
2/20 |
01 |
2/20 |
00 |
3/20 |
3 |
4/20 |
2 |
|
|
|
|
|
|
|
|
2/20 |
02 |
2/20 |
01 |
2/20 |
00 |
3/20 |
3 |
|
|
|
|
|
|
|
|
2/20 |
03 |
2/20 |
02 |
2/20 |
01 |
|
|
|
|
|
|
|
|
|
|
2/20 (1) |
10 |
2/20 |
03 |
2/20 |
02 |
|
|
|
|
|
|
|
|
|
|
1/20 |
11 |
2/20 |
10 |
2/20 |
03 |
|
|
|
|
|
|
|
|
|
|
1/20 |
12 |
1/20 |
11 |
|
|
|
|
|
|
|
|
|
|
|
|
1/20 |
13 |
1/20 |
12 |
|
|
|
|
|
|
|
|
|
|
|
|
1/20 |
20 |
1/20 |
13 |
|
|
|
|
|
|
|
|
|
|
|
|
1/20 |
21 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1/20 |
22 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1/20 |
23 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
И окончательно получаем
Буква |
Вероятность |
Код |
Шаг 1 |
Код |
Шаг 2 |
Код |
Шаг 3 |
Код |
Шаг 4 |
Код |
В |
3/20 |
3 |
3/20 |
3 |
4/20 |
2 |
5/20 |
1 |
8/20 |
0 |
|
|
|
|
|
(2) |
|
(3) |
|
(4) |
|
|
|
|
|
|
|
|
|
|
|
|
А |
2/20 |
00 |
2/20 |
00 |
3/20 |
3 |
4/20 |
2 |
5/20 |
1 |
|
|
|
|
|
|
|
|
|
|
|
И |
2/20 |
01 |
2/20 |
01 |
2/20 |
00 |
3/20 |
3 |
4/20 |
2 |
|
|
|
|
|
|
|
|
|
|
|
М |
2/20 |
02 |
2/20 |
02 |
2/20 |
01 |
2/20 |
00 |
3/20 |
3 |
|
|
|
|
|
|
|
|
|
|
|
_ |
2/20 |
03 |
2/20 |
03 |
2/20 |
02 |
2/20 |
01 |
|
|
|
|
|
|
|
|
|
|
|
|
|
Д |
1/20 |
11 |
2/20 |
10 |
2/20 |
03 |
2/20 |
02 |
|
|
|
|
|
(1) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
О |
1/20 |
12 |
1/20 |
11 |
2/20 |
10 |
2/20 |
03 |
|
|
|
|
|
|
|
|
|
|
|
|
|
Н |
1/20 |
13 |
1/20 |
12 |
1/20 |
11 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10
У |
1/20 |
20 |
1/20 |
13 |
1/20 |
12 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ю |
1/20 |
21 |
1/20 |
20 |
1/20 |
13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Р |
1/20 |
22 |
1/20 |
21 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ь |
1/20 |
23 |
1/20 |
22 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Е |
1/20 |
100 |
1/20 |
23 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ч |
1/20 |
101 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Х1 |
0/20 |
102 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Х2 |
0/20 |
103 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3. СИСТЕМЫ СЧИСЛЕНИЯ
Номер студенческого билета (последние четыре цифры) в прямом и обратном порядке перевести в двоичную, восьмеричную, шестнадца-
теричную систему. Произвести сложение и вычитание полученных значений.
Решение.
Пусть номер студенческого билета 20112010. Последние четыре цифры 2010 в обратном порядке 102.
Переведем числа в двоичную систему исчисления: 201010=214∙0+213∙0+212∙0+211∙0+210∙1+29∙1+28∙1+27∙1+26∙1+25∙0+24∙1+23∙1
++22∙0+21∙1+20∙0 = 111110110102.
10210=214∙0+213∙0+212∙0+211∙0+210∙0+29∙0+28∙0+27∙0+26∙1+25∙1+24∙0+23∙0+ +22∙1+21∙1+20∙0 = 11001102.
Переведем числа в восьмеричную систему исчисления: 201010=85∙0+84∙0+83∙3+82∙7+81∙3+80∙2 = 37328. 10210=85∙0+84∙0+83∙0+82∙1+81∙4+80∙6 = 1468.
Переведем числа в шестнадцетиричную систему исчисления: 201010=164∙0+163∙0+162∙7+161∙13+160∙10 = 7DA16. 10210=164∙0+163∙0+162∙0+161∙6+160∙6 = 6616.
11
Произведем сложение в каждой из систем исчисления:
201010+ 10210 = 211210,
111110110102+11001102=1000010000002,
37328+1468= 41008 7DA16 + 6616 = 84016.
Произведем вычитание в каждой из систем счисления (из большего
числа вычтем меньшее):
201010 – 0,010210 = 190810,
111110110102–11001102=111011101002,
37328–1468= 35648 7DA16 – 6616 = 77416.
4. ЛИНЕЙНЫЕ ВЫЧИСЛИТЕЛЬНЫЕ ПРОЦЕССЫ
Вычислить значение X при различных значениях аргументов:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
A2 B2 |
|
A2 B2 |
||||||||||||||||||
|
A |
|
|
|
|
|
|
A 1 |
|
|
|
|
|
|
A 1 |
||||||||
|
|
|
|
|
|
|
|
|
|||||||||||||||
X e |
|
A sin |
|
0.5 A B |
|
|
|
cos |
|
0.5 A B |
|
|
|
||||||||||
B |
|||||||||||||||||||||||
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
C |
A B |
|
|
|
|
|
C |
A B |
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12
Б л о к - с х е м а к з а д а ч е № 4
|
Начало |
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ввод A, B, C |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
A2 B2 |
|||||
Y1 := |
|
|
|
|
|
|
A 1 |
|
|
|
|
|
|
|
|||
|
|
0.5 A B |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|||||
Y2 := |
|
C |
A B |
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Y:=Y1/Y2
X:= e BA sin Y cos Y
Вывод X
Конец
Л и с т и н г п р о г р а м м ы н а P a s c a l
program z4; var
A,B,C,X,Y,Y1,Y2 : real; begin
// ввод данных writeLn('введите A, B, C'); readLn(A,B,C);
//вычисление промежуточных данных
//сначала числитель
Y1:=sqrt(sqr(A)+sqr(B))/(0.5 + A*B) - 1/A;
// потом знаменатель
13
Y2:=C+abs(A-B);
// потом их отношение
Y:= Y1/Y2;
//теперь всю формулу:
X:= exp(-A/B)*(sin(Y)+cos(Y));
//вывод результата writeLn(' X= ' , X);
end.
5. ПРОСТЫЕ РАЗВЕТВЛЯЮЩИЕСЯ ВЫЧИСЛИТЕЛЬНЫЕ ПРОЦЕССЫ
Ввести число X, выяснить, что больше: целая часть числа x, или его дробная часть, умноженная на 10. Если первое, то число разделить на 10, если второе, то дробную часть от него отнять.
Б л о к - с х е м а к з а д а ч е № 5
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
||
Начало |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
y>z*10 |
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||
Ввод x |
|
|
|
|
|
|
|
|
|
|
|
|
|
'дробная |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
'целая часть |
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
часть, |
||||||||||
|
|
|
больше' |
|
|
|
|
умноженная |
||||||||||
|
|
|
|
|||||||||||||||
y := trunc(x) |
|
|
|
|
|
|
|
|
|
|
|
|
|
на 10 |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
больше' |
|||
|
|
|
x:=x*10 |
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
Вывод y |
|
|
|
|
|
|
|
|
|
|
|
|
Вывод z*10 |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
z := frac(x) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x := x - z |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Вывод z
Вывод X
1
Конец
14
Л и с т и н г п р о г р а м м ы н а я з ы к е P a s c a l к з а д а ч е № 5
program Z5; var x,y,z:real; begin
writeLn('введите x'); readLn(x);
// рассчитываем целую часть y:=trunc(x);
writeLn('целая часть числа равна ', y);
// рассчитываем дробную часть z:=frac(x);
writeLn('дробная часть числа равна ', z);
// проверка условия if y>z*10 then
begin
writeLn('целая часть больше'); x:=x*10;
end else
begin
writeLn('дробная часть, умноженная на 10,
больше');
writeLn('удесятеренная дробная часть равна
',z*10);
x:=x-z; end;
writeLn('число после изменения x=',x); end.
15
6. СЛОЖНЫЕ РАЗВЕТВЛЯЮЩИЕСЯ ВЫЧИСЛИТЕЛЬНЫЕ ПРОЦЕССЫ
Ввести четырехзначное число, выяснить, равны ли первая и последняя цифра в его записи. Если цифры равны и четны, то разделить их на два. Если цифры не равны и первая цифра больше последней, то поменять их местами. Если цифры не равны и первая цифра меньше последней, то поменять местами вторую и третью цифры.
Б л о к - с х е м а к з а д а ч е № 6
|
|
|
|
|
|
2 |
|
|
|
1 |
|
|
|
||
Начало |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
||
|
|
|
Y:= Y mod 1000 |
|
Y:= Y mod 10 |
||
|
|
|
|
||||
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
Ввод X |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
x2:=Y div 100 |
|
x4:=Y div 1 |
||
|
|
|
|
||||
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
Y := X |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
Y:= Y mod 100 |
|
Y:= 1000*x1+100*x2+ |
||||
|
|
|
|
||||
|
|
|
|
10*x3 + x4 |
|||
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x1:=Y div 1000 |
|
|
|
|
|
|
|
|
|
|
|
Вывод X, Y, |
|||
|
x3:=Y div 10 |
|
|||||
|
|
|
|
||||
|
|
|
|
x1, x2, x3, x4 |
|||
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
2 |
|
3 |
|||
|
|
|
|
|
16
'первая и последняя цифры четны и равны'
x1:=x1 div 2
x4:=x4 div 2
3
X1=x4
x1 mod 2=0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
'первая и |
|||||||||||
|
|
|
|
|
|
|
|
|
последняя |
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
цифры не равны' |
||||||||||
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
‘первая и |
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
последняя |
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
|
цифры равны, |
|
|
|
|
|
|
|
x1>x4 |
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
но они не |
|
|
|
|
|
||||||||||||||||||
|
|
|
|
|
|||||||||||||||||||||
|
|
четны’ |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
Y:=x1 |
|
|
|
|
|
Y:=x2 |
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
x4:=x4 div 2 |
|
|
|
|
|
x2:=x3 |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x4:=Y |
|
|
|
|
|
x3:=Y |
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
X:= 1000*x1+100*x2+ 10*x3 + x4
Вывод X
Конец
Л и с т и н г п р о г р а м м ы н а я з ы к е P a s c a l к з а д а ч е № 6
Program Z6;
var X,Y,x1,x2,x3,x4: integer; begin
cls;
writeLn('Введите четырехзначное число'); readLn(X);
//чтобы не потерять исходное число,
//копируем его в Y
Y:=X;
17
x1:=Y div 1000; // первая цифра
Y:= Y mod 1000; // отбрасываем первую цифру
x2:=Y div 100; |
// вторая цифра |
|
Y:= Y mod 100; |
// отбрасываем вторую цифру |
|
x3:=Y div 10; |
// третья цифра |
|
Y:= Y mod 10; |
// отбрасываем третью цифру |
|
x4:=Y div 1; |
// четвертая цифра |
|
// проверяем, правильно ли мы разложили число |
||
Y:= 1000*x1 + 100*x2 + 10*x3 + x4; |
|
|
writeLn('на входе было ', X, ', на выходе |
||
получилось ', Y); |
|
|
writeLn('1-я цифра:', x1); |
|
|
writeLn('2-я цифра:', x2); |
|
|
writeLn('3-я цифра:', x3); |
|
|
writeLn('4-я цифра:', x4); |
|
|
if x1=x4 then |
|
|
begin |
|
|
if x1 mod 2=0 then |
|
|
begin |
|
|
writeLn('первая и последняя цифры |
четны |
|
и равны'); |
|
|
x1:=x1 div 2; |
|
|
x4:=x4 div 2; |
|
|
end |
|
|
else |
|
|
writeLn('первая и последняя цифры |
равны, |
|
но они не четны'); |
|
|
end else
18