retropluse832
?>

На языке программирования turbo pascal, используя цикл с предусловием, цикл с постусловием и цикл с счетчиком, напишите программы, вычисляющую факториал числа, введённого с клавиатуры. факториал: n! =1*2*3*…*n например: 4! =1*2*3*4=24

Информатика

Ответы

Vera-zero281

объяснение:

функциональное возвращает значение, процедурное – нет.

заголовок функционального обязательно содержит тип результата.

в теле функцианального обязательно наличие оператора, присваивающего значение имени функции.

вызов процедурного требует отдельного оператора, вызов функционального возможен в составе выражений.

имя процедурного необходимо для вызова, имя функционального – для присвоения значения.

на схемах алгоритмов вызов процедурного изображается в отдельном блоке, вызов функционального– в блоке процесса или вывода

fouettearoma

ответ:

объяснение:

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

преобразование целых чисел

для перевода необходимо исходное число разделить на основание новой системы счисления до получения целого остатка, который является младшим разрядом числа в новой системе счисления (единицы). полученное частное снова делим на основание системы и так до тех пор, пока частное не станет меньше основания новой системы счисления. все операции выполняются в исходной системе счисления.

рассмотрим для примера перевод числа из десятичной системы счисления в двоичную систему счисления.

возьмём десятичное число а10 = 124 и поделим его на основание двоичной системы, то есть число 2. деление будем производить уголком:

 

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

теперь то же самое число переведём в восьмеричную систему счисления. для этого число 12410 разделим на число 8:

 

как мы видим, остаток от первого деления равен 4. то есть младший разряд восьмеричного числа содержит цифру 4. остаток от второго деления равен 7. то есть второй разряд восьмеричного числа – это цифра 7. старший разряд получился равным 1. то есть в результате многократного деления мы получили восьмеричное число 1748.

проверим, не ошиблись ли мы в процессе преобразования? для этого преобразуем получившееся двоичное число в десятичную систему по обычной формуле разложения:

1×82+7×81+4×80=6410+5610+410=124  

; а можно ли осуществить перевод из восьмеричной системы счисления в двоичную делением? можно! но деление нужно произвести по правилам восьмеричной арифметики. правила работы в восьмеричной системе счисления мы рассмотрим в следующей главе. тем не менее, для полноты материала, рассмотрим пример перевода в двоичную форму полученного ранее восьмеричного числа 1748. разделим его на основание новой системы счисления 2.

 

как мы убедились выполнять деление в восьмеричной системе неудобно, ведь подсознательно мы делим в десятичной системе счисления. давайте обратим внимание на то, что число 8 является степенью числа 2. то есть можно считать восьмеричную систему счисления просто более короткой записью двоичного числа. это означает, что для представления восьмеричной цифры можно использовать три двоичных бита (8=23). давайте составим таблицу соответствия. она в таблице 1.

таблица 1. таблица соответствия восьмеричных цифр и двоичного кода

двоичный код

восьмеричная цифра

десятичный эквивалент

000

0

0

001

1

1

010

2

2

011

3

3

100

4

4

101

5

5

110

6

6

111

7

7

используя эту таблицу можно просто заменить каждую восьмеричную цифру тремя двоичными битами. три двоичных бита обычно называют триадой или трибитом. теперь давайте переведём восьмеричное число 1748 в двоичную форму при таблицы 7:      

аналогично можно выполнить перевод числа из двоичной системы в восьмеричную. для этого двоичное число разбивают на триады относительно крайнего правого разряда (или двоичной запятой) и, используя таблицу 7, каждой триаде ставят в соответствие восьмеричную цифру.

аналогичным образом можно выполнить перевод числа из шестнадцатеричной формы в двоичную и обратно. в этом случае для представления шестнадцатеричной цифры потребуется четыре двоичных разряда. четыре двоичных разряда обычно называют тетрадой. иногда при переводе иностранных книг используется термин нибл.

давайте составим таблицу соответствия двоичных тетрад и шестнадцатеричных цифр. для этого мы будем просто прибавлять единицу к значению предыдущей строки в каждом столбце таблицы, в соответствии с используемой в этом столбце системой счисления. результат в таблице 2.

в качестве примера использования таблицы 2 переведем шестнадцатеричное число 7с16 в двоичную форму представления:

 

таблица 2. таблица соответствия шестнадцатеричных цифр и двоичного кода  

двоичный код

восьмеричная цифра

десятичный эквивалент

0

0

0001

1

1

0010

2

2

0011

3

3

0100

4

4

0101

5

5

0110

6

6

0111

7

7

1000

8

8

1001

9

9

1010

a

a

1011

b

b

1100

c

c

1101

d

d

1110

e

e

f

f

пример преобразования двоичного числа в восьмеричную и шестнадцатеричную форму на рисунке 1.

 

рисунок 1. пример преобразования двоичного числа в восьмеричную и шестнадцатеричную форму.

на этом рисунке внизу выделены двоичные тетрады и соответствующие им шестнадцатеричные цифры. их соответствие можно проверить при таблицы 2. сверху выделены триады и соответствующие им восьмеричные цифры. старшая триада получилась неполной. её нужно дополнить старшими незначащими нулями для того, чтобы можно было бы воспользоваться таблицей 1.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

На языке программирования turbo pascal, используя цикл с предусловием, цикл с постусловием и цикл с счетчиком, напишите программы, вычисляющую факториал числа, введённого с клавиатуры. факториал: n! =1*2*3*…*n например: 4! =1*2*3*4=24
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

msangelika1010
Климова1317
ooottdi
Исакова-Александрович511
Горина
nestruev
nikolotovas
nataliagoncharenko
Gradus469
zoyalexa495
Vip2002www86
qwerty
oleonov
narkimry134
pastore