Главная Учебники - Разные Лекции (разные) - часть 34
|
И
ПРОГРАМИРОВАНИЮ
Студентки
I
-го курса
МГТУ ГА
Шифр – э991613
Задание
№1 Перевести десятичное число в систему счисления с основанием “b”. Представим число 3693,3 как 3693 и 0,3 Сначала переводим целую часть числа. 3693 : 8 = 461 (остаток 5) 461 : 8 = 57 (остаток 5) 57 : 8 = 7 (остаток 1) 7 : 8 = 0 (остаток 7) 7155 Переводим дробную часть. 0,3 * 8 = 2,4 (целая часть 2) 0,4 * 8 = 3,2 (целая часть 3) 0,2 * 8 = 1,6 (целая часть 1) 0,231 Теперь сложим целую и дробную часть, получим 7
155
,231
Проверка
:
7*83
+1*82
+5*81
+5*80
+2*8-1
+3*8-2
+1*8-3
=> =>3584+64+40+5+2*0,125+3*0,0156+0,0019=3693,2987=3693,3
Задание
№2 Перевести исходное 8 – ричное число в десятичное. Используем следующую формулу для перевода. Y= a n-1
* bn-1
+ a n-2
* bn-2
+…+ a1
* b1
+ a 0
* b0
+ a-1
* b-1
+ a-2
* b-2
+ a-k
* b-k
… Где n – количество разрядов целой части b-ичном числе. k – количество разрядов дробной част b-ичном числе. b – основание исходной системы счисления. 3*83
+2*82
+3*81
+5*80
+5*8-1
+2*8-2
=1536+128+24+5+0,625+0,03125=1693,66
Задание
№3 Осуществить перевод исходного числа, представленного в 8-ричной системы счисления, в 16-ричную систему счисления. Сначала число 426,574 переведем в двоичную систему счисления, а затем двоичное переведем в 16-ричную систему счисления. Теперь переведем в 16-ричную систему счисления Перевод чисел 0001; 0110; 1011; 1110 по формуле => Y=an-1
*bn-1
+an-2
*bn-2
+…+a1
*b1
+a0
*b0
+a-1
*b-1
+a-2
*b-2
+a-k
*b-k
Задание
№4 Осуществить алгебраическое сложение целых двоичных чисел в обратном коде. Сначала переведем числа в двоичную систему счисления. 18 : 2 = 9 (остаток 0) 9 : 2 = 4 (остаток 1) 4 : 2 = 2 (остаток 0) 2 : 2 = 1 (остаток 0) 1 : 2 = 0 (остаток 1) 10010
т.к. число 18 отрицательное то код примет вид 1.10010
, а обратный код числа –18 будет выглядеть 1.01101
19 : 2 = 9 (остаток 1) 9 : 2 = 4 (остаток 1) 4 : 2 = 2 (остаток 0) 2 : 2 = 1 (остаток 0) 1 : 2 = 0 (остаток 1) 10011
обратный код числа 19 совпадет с прямым кодом 10011
Теперь сложим обратные коды чисел. 1.01101 +
10011
10
.00000 т.к. возник перенос из знакового разряда, к результату прибавляем 1 0,00000 + 1 = 0,00001, то есть результатом операции является десятичное число +1.
(-18) + 19 = 1.
Задание
№5 Перемножить два целых положительных двоичных числа. Сначала переведем числа в двоичную систему счисления. 35 : 2 = 17 (остаток 1) 17 : 2 = 8 (остаток 1) 8 : 2 = 4 (остаток 0) 4 : 2 = 2 (остаток 0) 2 : 2 = 1 (остаток 0) 1 : 2 = 0 (остаток 1) 100011
11 : 2 = 5 (остаток 1) 5 : 2 = 2 (остаток 1) 2 : 2 = 1(остаток 0) 1 : 2 = 0 (остаток 1) 1011
100011 *
1011
100011 100011 000000 100011
____ 110000001
35 * 11 = 385
Проверка: Y=1*28
+1*27
+0*26
+0*25
+0*24
+0*23
+0*22
+0*21
+1*20
; y=256+128+1=385
Задание
№6 Сложить два двоичных числа с плавающей запятой. 0,10011*10011
или 0,10011*104
; 0,11100*10001
или 0,11100*101
; 0,10011*104
+ 0,11100*101
= 0,10011*104
+ 0,000111*104
=> => 0,10011*10011
+ 0,000111*10011
= 0,10110
1
*10011
; 0,10011 +
0,000111
0,1001101 Задание
№7.1 Записать по правилам QBasic следующие константы: 1,9; -54; 84526,07; 0,000000094
:
Значение Константы. Запись константы. Задание
№7.2 Какие из следующих обозначений допустимы в качестве идентификаторов переменных, и какие не допустимы. Определить, какие из переменных, могут быть использованы в программе, написанной на QBasic, в качестве: а) целочисленной переменной; б) вещественной переменной; в) символьной переменной. Написать программу ввода и вывода значений этих переменных. bik; 30; L8; 9j; F%; Hs5; d9; S5.
Простые переменные имеют имена, произвольной длинны, в имени используются буквы и цифры, но первым знаком в имени должна быть буква. Тем самым можно отнести к переменным следующие величины: F%, S5, d9, L8, bik.
а) К целочисленной переменной можно отнести следующее обозначение F%.
б) К вещественной переменной можно отнести следующее обозначение S5, d9, L8, Hs5.
в) К символьной переменной из предложенных значений не подходит ни одно. Программа ввода и вывода переменных: 10 W2$ = “ES”: PRINT W2$ 20 L8 = .0122: PRINT R4 25 b9 = -48: PRINT v4 30 Hs5 = 5.25: PRINT S6 Задание
№8. Составить программу вычисления и печати значений следующего выражения: 05 REM Вычисление выражения. 10 CLS 15 PRINT “
20 PRINT “Введите значение переменных Х и У” 25 INPUT x: INPUT y 30 a = 2 * x – y 35 b = LOG (x + y) 40 c = SIN (y * 3.14 / 180) 45 d = c ^ (-1 / 5) 50 e = a / b: IF (a < 0) THEN 60 55 S = e + d: PRINT “
60 S = e * (-1) + d: GOTO 55 65 END Задание
№9.1 Составить блок схему алгоритма и программу вычисления функции f(x,y). Значение переменных задать в диалоговом режиме с экрана монитора, значение функции вывести на экран монитора. yx+1
- 5x если x > y; (2x-1)y если x < y; 578 если x = y. вывод 05 REM Вычисление функции f(x,y) 10 CLS 15 PRINT “ f(x,y) = (y^(x +1)) – 5x если x > y “ 20 PRINT “f(x,y) = (2x – 1)y если x < y” 25 PRINT “f(x,y) = 578 если x = y” 30 PRINT “Введите значение переменных Х и У” 35 INPUT x: INPUT y 40 IF (x <= y) THEN 50 45 S=(y^(x+1)) – 5*x: PRINT “(y^(x+1))-5x=”;S: GOTO 65 50 IF (x = y) THEN 60 55 Z=(2*x – 1)*y: PRINT “(2x-1)y=”; Z: GOTO 65 60 F=578: PRINT “f(x,y)=”;F 65 END Задание
№9.2 Написать блок-схему алгоритма и программу вычисления. Переменную N задать в диалоговом режиме. На экран вывести значение N и результирующее значение. S = Алгоритм: Программа вычисления: 05 REM Вычисление прогрессии. 10 CLS 15 PRINT “Вычисление суммы прогрессии S=1/1+2/3+3/5+4/7+…+N/(2N-1) 20 PRINT “Введите количество членов прогрессии N” 25 INPUT N 30 S=0 35 i = 1 40 S = S + i / (2 * i – 1) 45 IF (i = N) THEN 55 50 i = i + 1: GOTO 40 55 PRINT “Сумма”; N; “членов прогрессии S =”; S 60 END Задание
№10 Вычислить с точностью е
бесконечную сумму и указать количество учтенных слагаемых. S= 1 +1/4 +1/9 +…+1/N2
5 REM Вычисление бесконечной суммы с точностью е
. 10 CLS 15 PRINT “Вычислить бесконечную суммупрогрессии с точностью е= 0.000S= 1 +1/4 +1/9 +…+1/N^2” 20 PRINT “Введите количество слагаемых N=” 25 INPUT N 30 S = 0 35 i = 1 45 IF (i = N) THEN 55 50 i = i +1: GOTO 40 55 PRINT “Суммы”; N; “членов прогрессии S=”;USING “#.
###”; S 60 END Задание
№11 Подсчитать количество цифр в тексте. Распечатать все встречающие цифры. 05 REM Подсчет цифр. 10 CLS 15 PRINT “Вычисление цифр в тексте” 20 INPUT "Введите текст"; Stroka$ 25 N% = 0 30 FOR I = 1 TO LEN(Stroka$) 35 Pstr$ = MID$(Stroka$, I, 1) 40 IF ASC(Pstr$) > 47 AND ASC(Pstr$) < 58 THEN N% = N% + 1: PRINT Pstr$ 45 NEXT I 50 PRINT "Количество цифр в тексте ="; N% 55 END
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||