Задача на одномерные массивы

Автор работы: Пользователь скрыл имя, 15 Сентября 2013 в 10:47, методичка

Краткое описание

Системы счисления делятся на непозиционные и позиционные. В непозиционных системах количественное значение символа определяется только его изображением и не зависит от его места (позиции) в числе. Например, римские цифры. Числа обозначались: 1 – I, 2 – II, 3 – III, 4 – IIII, 5 – V, 10 – X. Для более крупных чисел применялись обозначения L – 50; C – 100; D – 500; M – 1000. Позже стали применять обозначения 4 – IV; 9 – IX; 40 – XL; 90 – XC, и т.д. Числа обозначались посредством суммирования знаков в записи числа. Например, число 37 обозначалось в виде ХХХVII = 10+10+10+5+2. Этим способом можно записать любое число. Например, число 99 изображается XCIX.

Вложенные файлы: 1 файл

Задача на модномерные ассивы.doc

— 1.26 Мб (Скачать файл)


ФЕДЕРАЛЬНОЕ АГЕНТСТВО  ПО ОБРАЗОВАНИЮ

 

 

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО  ОБРАЗОВАНИЯ

 

Московский  государственный университет

приборостроения и информатики

 

 

 

 

 

 

 

 

ПОСОБИЕ ПО ИНФОРМАТИКЕ

 

для слушателей

 

подготовительных  курсов

 

Учебное пособие

 

 

 

 

 

 

 

Москва

2007

 

 

 

 

 

 

 

 

 

 

 

 

УДК 004517

ББК32.81

 

 

Пособие по информатике  для слушателей подготовительных курсов МГУПИ. Учебное пособие/ Журавлев В.А., Карулина В.А., Письменная Е.В.: Москва, МГУПИ, 2007.

 

 

Предлагаемое пособие  предназначено для слушателей подготовительных курсов Московского Государственного Университета Приборостроения и  Информатики и содержит разбор задач различных разделов информатики, а так же варианты тестов для самостоятельного решения.

Пособие обобщает опыт проведения вступительных экзаменов по информатике в форме тестирования в МГУПИ.  Оно будет  полезным также преподавателям, ведущим занятия на подготовительных курсах и других подразделениях, осуществляющих подготовку к вступительным экзаменам по информатике в МГУПИ.

 

 

 

Печатается по решению  Редакционно-издательского совета Московского 

Государственного Университета Приборостроения и Информатики.

 

 

 

Рецензент: Филатов

 

 

 

© Московский Государственный Университет

Приборостроения и Информатки.

© Журавлев В.А., Карулина В.А., Письменная Е.В.

 

 

 

 

 

 

 

 

 

 

ВВЕДЕНИЕ

 

Пособие предназначено  старшеклассникам и абитуриентам для  подготовки к вступительным экзаменам в МГУПИ. Пособие составлено в соответствии со школьной программой курса «Информатика» и в соответствии с примерной программой вступительного экзамена по основам информатики и вычислительной техники в вузы России [http://www.edu-it.ru/docs/sch_inform]. В пособии рассмотрены арифметические и логические основы ЭВМ, особое внимание уделено основам алгоритмизации и программирования. Проанализированы типовые алгоритмы и задачи на знание основ программирования. В качестве языка программирования выбран школьный алгоритмический язык.

Пособие знакомит будущих абитуриентов с образцами зданий, демонстрирует методы решения задач различной сложности.

Вступительные экзамены по информатике в МГУПИ проводятся в форме тестирования. Задания теста содержат 10 заданий. Первые восемь заданий с выбором ответа. Последние два задания без ответов. На выполнение экзаменационной работы по информатике отводится 3 часа (180 минут).

В 2007 году задачи представлены из следующих разделов:

1. Системы счисления;

2. Арифметические операции в системе чисел;

3. Хранение данных в ЭВМ;

4. Элементы математической логики;

5. Основные логические и запоминающие элементы компьютера;

6. Алгоритмизация и программирование;

7. Решение типовых  задач.

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

 

 

 

 

 

 

 

 

 

 

 

 

 

1. Системы счисления

 

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

Системы счисления делятся  на непозиционные и позиционные. В непозиционных системах количественное значение символа определяется только его изображением и не зависит от его места (позиции) в числе. Например, римские цифры. Числа обозначались: 1 – I, 2 – II, 3 – III, 4 – IIII, 5 – V, 10 – X. Для более крупных чисел применялись обозначения L – 50;  C – 100; D – 500;  M – 1000. Позже стали применять обозначения 4 – IV;  9 – IX; 40 – XL;  90 – XC, и т.д. Числа обозначались посредством суммирования знаков в записи числа. Например, число 37 обозначалось в виде ХХХVII = 10+10+10+5+2. Этим способом можно записать любое число. Например, число 99 изображается XCIX.  Римская система являлась непозиционной системой счисления, где не представляются дробные и отрицательные числа, действия над числами связаны с большими трудностями и не имеют жестких правил. Поэтому для быстрого выполнения расчетов с большими числами римская система не давала удовлетворительных результатов.

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

Основанием десятичной системы является число 10. Алфавитом  позиционной десятичной системы  являются десять цифр (символов), значения которых зависят от их местоположения в записи числа. В десятичной системе чисел на последнем месте записываются единицы, на предпоследнем – десятки, а перед этим – сотни и т.д.

 

Пример:

552 = 5´100 + 3´10 + 2´1 или 532 = 5´102 +3´101 + 2´100

Тем же способом, используя  отрицательные степени 10-1 = 0,1; 10-2 = 0,01 и т.д., легко записать и десятичные дроби.

Пример:

0,839 = 8´10-1 + 3´10-2 + 9´10-3

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

Пример:

A(10)=552,25=5´102 +5´101+ 2´100 + 2´10-1 +5´10-2

В десятичном числе A(10)  цифры 5 и 2, находящиеся на разных позициях, имеют различные количественные значения, при перемещении цифры на следующую позицию ее величина изменяется в 10 раз.

A(10) = 102,839 = 1´102 + 0´101 +2´100 +8´10-1 +3´10-2 +9´10-3

Если вместо 10 взять  любое другое  натуральное число  p > 1, легко построить число в системе счисления с основанием  p.

Пусть, например, p = 2. В этой двоичной системе счисления употребляются  только две цифры:  0 и  1.

11011,011(2) = 1´24 + 1´23 + 0´22 +1´21 +1´20 + 0´2-1 + 1´2-2 = 27,375(10)

Каждое целое число  может быть записано в системе  десятичных цифр, т.е. в виде

A(10)= an´10n + an-1´10n-1 + …+a2´102 + a1´101 +a0 ´100,

где  n – некоторое соответствующее неотрицательное число;  числа an, an-1, …, a2, a1, a0 знаки цифр из алфавита  аi Î {0…9}.

 

Запись  некоторого числа в произвольной системе счисления. Любое число в позиционной системе счисления при любом основании q > 1 может быть записано в естественной форме

может быть представлено степенным рядом

,

где аk — любая цифра из алфавита системы основания p, m, 1 — число позиций (разрядов) соответственно для целой и дробной частей числа. Для удобства преобразования чисел из одной системы счисления в другую степенной ряд для целой и дробной частей числа представляется эквивалентными выражениями по схеме Горнера:

 

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

Прибавление единицы  к более старшему (k+1)–му разряду происходит, когда число, составленное из оставшихся более младших k разрядов составляет pk - 1.

Пример:  p = 2, число 0111(2)+1 дает переход единицы из нулевого разряда в первый (в нулевом разряде остался 0),  далее из первого во второй (в первом разряде остался 0),  и  далее  в третий,  в  результате чего получится  число  0111(2) + 1 = 7(10) +1 = 8(10) = 2 =  1000(2), k  = 3.

 

 

p=10

p=2

p=3

p=4

p=5

p=6

p=7

p=8

p=9

p=16

p=27

0

0000

0000

0000

0000

 

000

00

000

0

0

1

0001

0001

0001

0001

   

01

 

1

1

2

0010

0002

0002

0002

   

02

 

2

2

3

0011

0010

0003

     

03

 

3

3

4

0100

0011

0010

0004

   

04

 

4

4

5

0101

0012

0011

   

005

05

 

5

5

6

0110

0020

0012

0011

   

06

 

6

6

7

0111

0021

0013

   

010

07

 

7

7

8

1000

0022

0020

     

010

008

8

8

9

 

0100

         

010

9

9

10

 

0101

 

0020

 

013

   

A

A

11

 

0102

           

B

B

12

 

0110

           

C

C

13

 

0111

     

016

   

D

D

14

 

0112

           

E

E

15

01111

0120

0033

0030

   

017

 

F

F

16

             

017

10

G

17

         

023

   

12

H

18

               

13

I

19

     

0034

       

14

J

20

               

15

K

21

10101

           

024

16

L

22

               

17

M

23

               

18

N

24

     

0044

       

19

J

25

               

1A

P

26

                 

Q

27

11011

               

10


 

Для проверки правильности заполнения пустых клеток необходимо выполнить обратный перевод записанных чисел. Для этого нужно использовать формулу для перевода  числа из  системы счисления с основанием  p  в систему счисления с основанием 10 следующим образом. Например, вписанное число 221(3) = A(10) = 2´32+2´31+1´30 = 25, что соответствует числу, расположенному в соответствующей ячейке десятичной системы счисления.

Перевод числа с основанием, являющимся степенью другой системы. Если между основаниями p и q соблюдается связь р1 = qk , где k – целое, то каждая цифра числа с основанием p представляется k цифрами алфавита основания q. Так, если   p1 = 81 = qk = 23 или  p1 = 271 = qk = 33 то каждая цифра p–го числа (восьмеричного  или   двадцатиcемиричного)   представляется   k   (тремя)   цифрами q–ричного (двоичного или троичного) числа и наоборот — каждая группа из k цифр (от запятой влево и вправо) q–ричного числа заменяется одной   p–ричной цифрой  (см. в таблице столбцы, выделенные жирным шрифтом и выделенные другим шрифтом).

 

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

  1. А(8) = 407,15 = A(2)= 100 000 111,001 101    и обратно    А(2)= 10 011 011,010 11 = =A(8)= 233,26.
  2. B(27) = 23D,23 = B(3)=2 010 111,002 01 и обратно B(3) = 210110,22102 = B(9) = =713,836.
  3. B(9)  = 78.457 = B(3) = 2122.111221    и обратно B(3) = 221221001.12021 = B(27) = =PP1.FK
  4. C(16) = 4F0E,1C = С(2) = 0100111100001110,00011100;

     C(2)= 11001101011,111101 = C(16) =  =66B,F4

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

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

 

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

Ap = Aq = (…((bn-1q + b n-2)q + bn-3)q +… +b1)q + b0     

Задача перевода числа  из одной системы счисления (p) в другую (q)  заключается в отыскании значений цифр bk числа в новой системе счисления. 

Заметим, или Аp = Аq = (Аq)1×q + b0, где (Аq)1 — целое частное, полученное при делении Аp  на основание q, b0 – остаток, являющийся первой младшей цифрой числа в новой системе  счисления, выражен цифрами исходной системы счисления.

Информация о работе Задача на одномерные массивы