Министерство образования и науки РФ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования Самарский государственный архитектурно-строительный университет Факультет информационных систем и технологий Кафедра прикладной математики и вычислительной техники О.В. Прохорова ПРАКТИКУМ по курсу «Информационные технологии. » Самара 2015 Оглавление 1. Системы счисления и действия в них .................................................................... 3 2. Кодирование и шифрование информации ............................................................ 8 3. Алгебра логики ....................................................................................................... 11 4. Информационно–логические задачи.................................................................... 16 5. Логические схемы ................................................................................................ 25 6. Разработка алгоритмов ........................................................................................ 28 Литература ................................................................................................................. 31 2 1. Системы счисления и действия в них Задачи 1. Представить число 143 в шестнадцатеричной и двоичной системе счисления: Решение. - Представление в двоичной системе счисления: 143 – 128 = 15. 14310 1 * 2 7 0 * 2 6 0 * 2 5 0 * 2 4 1 * 2 3 1 * 2 2 1 * 21 1 * 2 0 100011112 - Представление в 16- ричной системе счисления: A 10 B 11 16*8 = 128. C 12 D 13 E 14 F 15 143-128 = 15. 14310 8 *161 15 *16 0 8F16 . 2. Перевести число 123 из восьмеричной системы счисления в десятичную и двоичную. Решение. 1238 1* 8 2 2 * 81 3 * 80 8310 64 19 8310. 1238 1 * 26 0 * 25 1 * 2 4 0 * 23 0 * 2 2 1 * 21 1* 20 10100112. 3. Перевести число 1AB из шестнадцатеричной системы счисления в десятичную и двоичную. Решение. 1AB16 1 * 16 2 10 * 161 11 *16 0 256 128 32 8 2 1 42710 . 3 42710 1 * 28 1 * 27 0 * 26 1 * 25 0 * 2 4 1 * 23 0 * 2 2 1 * 21 1 * 20 1101010112. 4. Перевести число 2BС из шестнадцатеричной системы счисления в десятичную и двоичную. Решение. 2 BC16 2 *16 2 11 *161 12 *16 0 70010 70010 512 128 32 16 8 4 1 * 2 9 0 * 2 8 1 * 2 7 0 * 2 6 1 * 2 5 1 * 2 4 1 * 2 3 1 * 2 2 0 * 21 0 * 2 0 . 70010 10101111002 5. Перевести число A3FD из шестнадцатеричной системы счисления в десятичную и восьмеричную. Решение. A3FD16 10 *16 3 3 *16 2 15 *161 13 *16 0 40960 768 240 13 4198110 4198110 1 * 8 5 2 * 8 4 1 * 8 3 7 * 8 2 7 * 81 5 * 8 0 1217758 6. Перевести число 254 из восьмеричной системы счисления в десятичную и двоичную. Решение. 254 8 2 * 8 2 5 * 81 4 * 8 0 128 40 4 17210. 17210 128 32 8 4 1 * 2 7 0 * 2 6 1 * 2 5 0 * 2 4 1 * 2 3 1 * 2 2 0 * 21 0 * 2 0 10101100 2. 4 7. Перевести число 7СВ из шестнадцатеричной системы счисления в десятичную и двоичную. Решение. 7CB16 7 *16 2 12 *161 11 *16 0 1792 192 11 199510. 199510 1024 512 256 128 64 8 2 1 1 * 210 1 * 2 9 1 * 2 8 1 * 2 7 1 * 2 6 0 * 2 5 0 * 2 4 1 * 2 3 0 * 2 2 1 * 21 1 * 2 0. 199510 111110010112. 8. Перевести число 7DВ из шестнадцатеричной системы счисления в десятичную и восьмеричную. Решение. 7 DB16 7 *16 2 13 * 161 11 *16 0 1792 208 11 201110. 201110 1536 448 24 3 3 * 8 3 7 * 8 2 3 * 81 3 * 8 0 37338 . 9. Перевести число 1365 из восьмеричной системы счисления в десятичную и двоичную. Решение. 13658 1 * 8 3 3 * 8 2 6 * 81 5 * 8 0 512 192 48 5 75710 75710 512 128 64 32 16 4 1 1* 2 9 0 * 28 1* 2 7 1* 2 6 1* 2 5 1 * 2 4 0 * 2 3 1 * 2 2 0 * 21 1 * 2 0 10111101012. 10. Перевести число FFF из шестнадцатеричной системы счисления в десятичную и двоичную. Решение. FFF16 15 *16 2 15 *161 15 *16 0 3840 240 15 409510 5 409510 2048 1024 512 256 128 64 32 16 8 4 2 1 1 * 211 1 * 210 1 * 2 9 1 * 2 8 1 * 2 7 1 * 2 6 1 * 2 5 1 * 2 4 1 * 2 3 1 * 2 2 1 * 21 1 * 2 0 1111111111112. 11. Перевести число FFFС из шестнадцатеричной системы счисления в десятичную и восьмеричную. Решение. FFFC16 15 *16 3 15 *16 2 15 *161 12 *16 0 61440 3840 240 12 6553210 6553210 1 * 8 5 7 * 8 4 7 * 8 3 7 * 8 2 7 * 81 4 * 8 0 177774 8 12. Произвести сложение и вычитание двоичных чисел: а) 1010111101 + 1110101010 ____________ 11001100111 б) 11110101011 - 1010101010 ____________ 10100000001 13. Произвести вычитание двоичных чисел через сложение уменьшаемого с дополнительным кодом вычитаемого. 11110101011 - 1010101010 Решение. а) расширим размерность вычитаемого до добавив нуль слева, получим: 01010101010 размерности уменьшаемого, 6 б) вычислим обратный код к вычитаемому, получим: 10101010101 г) вычислим дополнительный код для вычитаемого, прибавив 1 к младшему разряду обратного кода, получим: 10101010110. д) сложим уменьшаемое с полученным дополнительным вычитаемого, получим: 11110101011 + 10101010110 ____________ 1\10100000001. (Старший разряд отбрасывается). кодом Что совпало с результатом прямого вычитания предыдущего примера. 7 2. Кодирование и шифрование информации Задачи 1. Сколько нужно бит (разрядов) для кодировки всех 111 символов на клавиатуре компьютера? Решение. Найдем максимальную и минимальную границы для числа 111 в степенях 2, получим: 26=64<111<128=27. Далее произведем действия последовательного вычитания из числа степеней 2, будем иметь: 111 – 64 = 47 – 32 = 15 - 8 = 7 – 4 = 3 – 2 =1 26 25 1 1 2. 24 23 22 21 20 1 1 1 1 Какой минимальной длины битовая комбинация достаточна для кодировки слова "Информационный" (без учета кавычек) в ЭВМ по принципу "один символ – один байт" битовой комбинацией длины? Решение. Подсчитаем количество букв в слове. Оно равно 14. Каждая буква в стандарте ASCII кодируется 1 байтом, значит, минимальной длины битовой строкой для кодирования слова может быть строка длиной 14*8 =112 бит. 8 3. Сколько различных байтов в ASCII–коде предложения вида "Информационная технология" (без учета кавычек)? Решение. Подсчитаем количество символов в предложении. Им будет число: 14 + 11 = 25. Различные байты соответствуют разным символам и составим таблицу частоты встречающихся символов в предложении. Получим: и н ф о р м а ц и о н н ы 4 4 1 4 1 1 1 1 - - - - 1 т е х н о л о г и и 1 - 1 - - 1 - 1 - - е 2 1 Вычтем из общего числа символов 25 число клеток с повторами, которые обозначены в таблице “-“, т.е. 25 – 10 = 15. 4. Сколько различных символов в битовом сообщении 1111000101010000111100011001111011010000, закодированном по принципу "1 байт – 1 символ"? Решение. Разделим строку на блоки по 8 символов. Получим: 11110001 01010000 11110001 10011110 11010000. Проверим каждый байт на совпадение. Получим ответ - все символы различны. 5. Что больше – длина битовой комбинации, необходимой для записи десятичного числа 212 или количество различных чисел, кодируемых 12 битами? 9 Решение. Больше длина битовой комбинации, необходимой для записи десятичного числа 212, т.к. в таком представлении присутствует еще 1 бит, а именно 20, т.е. этому числу требуется 13 бит. 6. Текст ADBCE закодирован как 0001000101000110010000110. Как будет декодирован текст 000100001100100001100001100101, закодированный по этому же коду? Решение. Подсчитаем общее количество символов в строке, разделим на количество букв, получим длину кода символа: 25\5 = 5. Разделим строку на 5 блоков по 5 символов и запишем их в таблицу: A D B C E 00010 00101 00011 00100 00110 Текст, который нужно декодировать разделим на блоки длиной 5, получим: 00010 00011 00100 00110 00011 00101 Найдем эти коды в таблице и, используя соответствие кода и символов восстановим текст. Получим восстановленный текст: ABCEBD. 10 3. Алгебра логики Задачи 1. Составить таблицу истинности функции . Упростить эту функцию и построить таблицу истинности для полученной после упрощения функции. Решение. Упростим функцию, используя свойства дистрибутивности и идемпотентности, получим: _______ __ __ __ __ Z ( x y x y) x ( x y x y) x __ __ __ __ __ __ x y x x y x x y. Составим таблицу истинности на различных значениях переменных: x y x y 0 0 1 1 1 0 1 1 0 1 1 0 0 1 0 1 1 0 0 0 2. Дано выражение: Z . Упростить эту функцию и построить таблицу истинности для полученной после упрощения функции. 11 Решение. Упростим функцию, используя свойства дистрибутивности, идемпотентности, поглощения, закон де Моргана, получим: _______ __ _______ __ __ __ Z ( x x y ) ( y x y ) ( x x y ) ( y x y) __ __ __ __ __ __ __ ( x x y ) ( y x ) y x 0 0 x y y x x y. Составим таблицу истинности на различных значениях переменных: x y x y 0 0 1 1 0 1 1 1 0 1 1 yx x y Z 0 1 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 __ __ 3. Дано выражение: . Упростить эту функцию и построить таблицу истинности для полученной после упрощения функции. Решение. Упростим функцию, используя закон де Моргана ,свойства дистрибутивности, идемпотентности, поглощения, получим: __ __ __ __ ______ __ __ Z (( x y ) ( x y )) ( y x y 0) x y ) __ __ __ __ __ __ __ __ __ __ __ ( x y ) ( y x y x y ) ( x y ) ( x y x ) 0 x y x y. Составим таблицу истинности на различных значениях переменных: x y x y 0 0 1 1 1 0 1 1 0 0 __ __ x y 12 1 0 0 1 0 1 1 0 0 0 4. Подобрать две функции, эквивалентные данной функции, но с меньшим числом операций и операндов: . Решение. z x y y x x x y ( y x x ) x y ( y x ) x ) x y (y x x x) x y y x y x x 0 y x x y x x ( y x ) x ( y x) x y . Из указанных ниже функций отметить (с обоснованием) 5. эквивалентные между собой функции: ; o o . o Указание: упростить и сравнить. Решение. z x xy x y x ( xy x ) y x ( x y ) x y x ( x x y x) y x ( x x y x) y x x y x y x y x y x (1 y ) y x y. 13 u x y y x y x y ( y x ) y x y x y y x y . s y y x y y x y ( y x) y x y y y x y y ( x 1) y x . 6. Из указанных ниже функций отметьте (с обоснованием) эквивалентные между собой функции: ; o o ; o ; ; o . o Указание: упростить и сравнить. Решение. z x y x y y y y x x y x y ) y ( x y ) x y y u ( x y y x) y (( x y ) ( y x )) y x y y y x y x u ( x y x y ) y ( x y x y ) y 0 x y 0 x y. 14 s ( y x y ( y x y )) y ( x y ) ( y ( x y )) y ( x y ) ( y y x y y y x y y ( x 1) y . v ( y x y ( y x y )) y ( x y ) ( y ( x y )) y ( x y ) ( y y x y y y x y y ( x 1) y . 15 4. Информационно–логические задачи Задачи 1. Найти хотя бы один набор десятичных значащих цифр А, Б, В, Г при условии, что выполнено равенство АБАВ + БАБ2 = ГГВ1. Указание: заметим, что В=9 так как в этом разряде суммы стоит цифра, которая может получиться лишь при сложении 2 с 9; продолжить аналогичные рассуждения относительно остальных разрядов. Решение. Запишем условия решения задачи: А+Б = Б + А = Г = 8. В=9. Г=8. Одним из наборов чисел А и Б может быть выбран набор: А = Б = 4. 2. Найдите все возможные подходящие варианты наборов цифр для равенства вида: ABCD + ECBF = A000C, где каждой букве соответствует одна десятичная цифра (разным буквам – разные цифры) и перенос из младшего разряд был. Указание: заметим, что А=1 так как при сложении старших разрядов слагаемых 16 может переноситься в следующий разряд лишь 1; продолжить аналогичные рассуждения относительно остальных разрядов. Решение. Так как А + Е должно равняться 10 вместе с перенесенной единицей из младшего разряда, т.е. А + Е = 9 и, если учесть, что А равно 1, то Е = 8. Тогда можно записать: А + Е + 1 = 10 А= 1, Е = 8; В + С +1 = 10 D + F = 10 + C. Имеем 2 уравнения и три неизвестных. Одним из вариантов ответа может быть вариант: С =3, Д = 4, F = 9, B = 6. Произведем проверку, получим: АВСД + ЕСВF = 1634 + 8369 = 10003. 3. X, Y, Z, U, V должны поехать в разные города А, Б, В, Г, Д, Е. X может ехать только в А, Б, Д; Y может ехать только в А, Б и В; Z может ехать только в В; U не может ехать никуда, куда может ехать Y; V не может ехать только Д и Е. Необходимо определить, в каком городе мог быть каждый из них, если оказалось, что вдвоем они не были ни в одном городе. Указание: сделать таблицу возможностей поездок, строки которой пометить именами, а столбцы –городами. 17 Решение. Путешественники Города {A,Б,В,Г,Д,Е} Результат X А Б Д Д Y А Б В А Z В Г U= Y __ В Д Е Г Б __ V= D E 4. Брауну, Джонсу и Смиту предъявлено обвинение в соучастии в ограблении банка. В ходе следствия Браун сказал, что преступники были на синем "Бьюике", Джонс сказал, что это был черный "Крайслер", Смит утверждал, что это был "Форд", но не синий. Каждый указал неправильно либо марку, либо цвет автомобиля. Определить истинный цвет и истинную марку автомобиля. Решение. Рассмотрим простые высказывания вида: х = "машина – синяя", у = "машина – Бьюик", z = "машина – черная", u = "машина – Крайслер", v = "машина – Форд". На их основе высказывание Брауна можно записать в виде сложного логического выражения вида в виде , а высказывание Смита – в виде , высказывание Джонса – . Так как в каждом 18 из этих выражений одна из переменных принимает значение "истина", то истинны и дизъюнкции вида: определению конъюнкции, . По . Это выражение мы взяли из-за однозначности равенства 1 конъюнкции и неоднозначности (многовариантности) его равенства нулю. Упростим выражение: Мы использовали тот факт, что одновременно не могут быть истинными два высказывания относительно цвета или два высказывания относительно марки машины. Так как конъюнкция истинна только тогда, когда , то заключаем, что автомобиль был черным "Бьюиком". 5. Студент А — отличник, у Б — пятерка или четверки, у В и Д — четверки или тройки, у Г — возможны все оценки. Какие оценки у каждого из них по контрольной работе, если все они получили различные оценки? Указание: студент А получил пятерку, следовательно, Б – четверку; продолжить далее рассуждения с учетом полученных раннее выводов. Решение. Введем логические переменные: X – оценка за контрольную 5. Y - оценка за контрольную 4. Z - оценка за контрольную 3. 19 U - оценка за контрольную 2. K - оценка за контрольную 1. Введем функцию оценки знаний конкретного студента: А: Х; Б: Y X ; В: Y Z ; Д: Y Z ; Г: X Y Z U K. На основе введенных логических переменных и функций запишем функцию того, что каждый студент получил оценку: f X (Y X ) (Y Z ) (Y Z ) ( X Y Z U K ) 1. Раскрытие скобок на основе законов Булевой алгебры дает ответ: f X (Y Z ) 1. Что противоречит утверждению, что каждый студент получил оценку отличную от оценок других студентов. Значит необходимо изменить условия задачи, например, пусть А может получить 5 или 2, остальное оставим без изменений. Тогда ответ на поставленный вопрос будет иметь вид: А получил 2; Б получил 5; В получил 4; Д получил 3; Г получил 1. 20 6. Андрей не может ехать в Малайзию и Китай. Николай хочет ехать только в Малайзию или Румынию. Геннадий не хочет ехать только в Уругвай. Сергей согласен ехать лишь в Румынию и Того, а Владимир может поехать в любую страну, кроме Китая, Уругвая и Того. Может ли каждый в одиночестве посетить одну из названных стран? Указание: сделать таблицу возможностей поездок, строки которой пометить именами, а столбцы – городами. Решение. Малайзия Китай Румыния Уругвай Того Результат Андрей + + _ _ _ Уругвай Николай + _ + _ _ Румыния Геннадий Сергей Китай _ _ _ Владимир + _ _ + Того _ _ Малайзия Ответ: да. 7. Андрей и Петр — родственники Евгения, Дмитрий — родственник Николая и Петра. Кому должен приходиться родственником Николай, чтобы они все были родственниками друг другу? Указание: рассмотрите все возможные варианты для Николая. Решение. Андрей Петр Евгений Андрей + Петр + Евгений Дмитрий Николай + Дмитрий Николай + + + + + 21 Построим граф. Е А Е П Д Н На графе видно, чтобы его замкнуть необходима связка Н с А, т.е. для ответа на вопрос задачи следует ввести родственные отношения Николая с Андреем для того, чтобы все названные люди были родственниками друг другу. 8. Имеются только вагоны вместимости 23 тонны и 37 тонн. Поезд из полностью загруженных вагонов с грузом в 883 тонны прибыл на станцию расцепления. Здесь из его вагонов сформировали и отправили поезд с 379 тоннами груза (без перегрузки и добавления других вагонов). Сколько вагонов каждой вместимости осталось в исходном поезде на станции расцепления? Ответ обосновать минимумом кратких и утвердительных рассуждений. Указание: необходимо решать соответствующие уравнения в целых числах, например, 23x+37y=883; начните с наименьшего возможного значения x (почему?). Решение. 883т. - 379 т.= 504 т. 504 / 37 = 13 (вагонов по 37 т.) + 1 (вагон по 23 т.). 22 9. Обсуждая свои возможности по поступлению в вуз абитуриенты Андрей, Борис и Владимир высказали следующие предположения (в виде сложного высказывания, состоящего из двух простых высказываний) вида: Андрей — "Я не смогу поступить, а Владимир — поступит"; Борис — "Владимир не поступит, а Андрей — поступит"; Владимир — "Если я поступлю, то Борис — не поступит или наоборот". После сдачи экзаменов выяснилось, что каждый высказал одно верное и одно ложное простое утверждение. а) Кто поступил в вуз, если не смог поступить лишь один из них? б) Кто поступил в вуз, если поступил лишь один из них? Указание: выпишите логические выражения, соответствующие каждому высказыванию и упростите конъюнкцию, тождественно равную единице (истине). Решение. Введем в рассмотрение логические переменные: x - поступит Андрей. y - поступит Борис. z – поступит Владимир. Запишем логические рассуждения: Андрей: x z Борис: z x Владимир: z y z y Каждое из этих высказываний истинно в одном из событий, значит: 23 x z 1, z x 1, ( z y ) ( z y) 1 , Логическое умножение этих функций даст ответ на вопросы: f ( x z ) ( z x) ( z y z y ) ( x z 0 0 z x) ( z y z y ) 0 x z y z x y 0 x z y z x y 1. Анализ полученного выражения показывает, что первое слагаемое отвечает на второй вопрос и ответ на него такой: не поступит Андрей и не поступит Владимир, а поступит Борис. Второе слагаемое говорит о том, что поступит Владимир и поступит Андрей, а Борис не поступит, т.е. отвечает на первый вопрос. 24 5. Логические схемы Задачи 1. Нарисовать схему одноразрядного сумматора Z=X+Y с учетом переноса Р. Указание: изобразить все четыре возможных варианта (состояния) сумматора. Решение. X1 X2 Si Pi 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 Pi-1 x1 1 Pi & Si & x2 x1 1 x2 2. Нарисовать схему трехразрядного сумматора с учетом переносов. Указание: изобразить все возможные варианты (состояния) сумматора. 3. Нарисовать схему и найти логическую функцию, эквивалентную "Черному ящику", если на входе "Черного ящика" имеем x=100 (истина, ложь, ложь), y=010 (ложь, истина, ложь), а на выходе z=000 (ложь, 25 ложь, ложь). Указание: рассмотреть выходы, соответствующие каждому "разряду" входов. 4. Нарисовать схему и найти логическую функцию, эквивалентную "Черному ящику", если на входе "Черного ящика" имеем x=0100, y=0101, а на выходе z=0000. Указание: рассмотреть выходы для каждого "разряда" (1 – истина, 0 – ложь). 5. Нарисовать схему и найти логическую функцию, эквивалентную "Черному ящику", если на входе "Черного ящика" имеем x=10011, y=01011, а на выходе z=01110. Указание: рассмотреть выходы для каждого "разряда" (1 – истина, 0 – ложь). 6. Определить логическую функцию, соответствующую схеме (знак логической операции в прямоугольнике указывает на то, что действует соответствующая логическая схема – инвертор, дизъюнктор или конъюнктор): Указание: написать на каждой "свободной" стрелке соответствующее логическое выражение. 7. Определите логическую функцию, реализуемую следующей логической схемой: 26 Указание: написать на каждой "свободной" стрелке соответствующее ему выражение. 8. Построить логическую схему для функции . Указание: последовательность построения – два инвертора, затем конъюнктор, затем дизъюнктор. 9. Построить логическую схему для функции . Указание: последовательность построения ((конъюнктор – инвертор) – (инвертор – дизъюнктор)) – конъюнктор. 10.Построить наиболее экономную логическую схему для функции . Указание: перед построением схемы нужно упростить выражение. 27 6. Разработка алгоритмов 1. Есть массив целых чисел, напишите алгоритм нахождения суммы его четных чисел. Решение. 1. Инициализация: A[], n, i = 0, sum = 0. 2. 3. 4. 5. 6. 7. if (A[i] % 2 = 0) sum = sum +A[i] i=i+1 Если ( i < n)переход к п. 2. if (sum = 0) печать: таких трех чисел нет, переход к п.7. Печать sum. Конец алгоритма. 2. Есть массив целых чисел, составить алгоритм нахождения суммы трех его чисел кратных 5. Решение. 1. Инициализация: A[], n, i = 0, sum = 0, к = 0. 2. if (A[i] % 5 = 0) sum = sum +A[i] 3. k++ 4. 5. 6. 7. 8. 9. if (k = 3) переход к п. 6. i=i+1 Если ( i < n)переход к п. 2. if (k! = 3) печать: таких трех чисел нет, переход к п.7. Печать sum. Конец алгоритма. 3. Есть массив целых чисел, составить алгоритм нахождения суммы его нечетных и отрицательных чисел. Решение. 1. Инициализация: A[], n, i=0, sum_nech=0, sum_otriz=0. 2. if (A[i] % 2 != 0) sum_nech= sum_nech + A[i]. 3. if( A[i] < 0) sum_otriz = sum_otriz A[i]. 4. i = i + 1. 5. if ( i< n) переход к п. 2 6. if ((sum_nech = 0) || ( sum_otriz =0 )) печать: таких чисел нет, переход к п.8 7. Печать sum_nech, sum_otriz. 8. Конец алгоритма. 28 4. Есть массив целых чисел, составить алгоритм нахождения суммы его чисел, удовлетворяющих условию | ai| < i^2. Решение. 1. Инициализация: A[], n, i=0, sum=0. 2. Если (A[i] < 0) A[i] = -A[i]. 3. if ( A[i] <= i*i) sum = sum + A[i]. 4. i = i + 1. 5. if (I < n) переход к п. 2 6. if (sum = 0) печать: таких чисел нет, переход к п.8. 7. Печать sum. 8. Конец алгоритма. 5. Есть массив целых чисел, напишите алгоритм нахождения суммы его четных чисел и нечетных членов. Решение. 1. Инициализация: A[], n, i=0, sum1=0, sum1=0. 2. if (A[i] % 2=0) sum1=sum1+A[i]. // сумма четных чисел 3. if (i %2!=0) sum2=sum2 + A[i]. //сумма нечетных членов 4. i = i + 1. 5. if (i<n) переход к п. 2 6. if (sum 1= 0) печать: четных чисел нет, переход к п.8. 7. Печать sum1 и sum2 . 8. Конец алгоритма 6. Есть массив целых чисел, напишите алгоритм нахождения числа и суммы тех его членов, которые делятся на 5 и не делятся на 7. Решение. 1. Инициализация: A[], n, i=0, sum=0. 2. if ((A[i] % 5 = 0) & (A[i] % 7 !=0)) sum=sum +A[i]. 3. i = i + 1. 4. if (i<n) переход к п. 2 5. if (sum = 0) печать: таких чисел нет, переход к п.7. 6. Печать sum. 7. Конец алгоритма 7. Есть массив целых чисел, напишите алгоритм нахождения произведения членов массива кратных числу р. Решение. 1. Инициализация: A[], n, i=0, multy=1. 29 2. if (A[i] % P = 0) multy = multy*A[i]. 3. i = i+1 4. if (I < n) переход к п. 2 5. if (multy = 1) печать: таких чисел нет, переход к п.7. 6. Печать multy. 7. Конец алгоритма 8. Есть массив целых чисел. Напишите алгоритм замены в нем нулями членов, модуль которых при делении на р дает в остатке q. Решение. 1. Инициализация: A[], n, i = 0, sum = 0, p, q. 2. if (A[i] % p = q) A[i] = 0. 3. 4. 5. 6. i=i+1 Если ( i < n)переход к п. 2. Печать A[]. Конец алгоритма. 30 Литература 1. Информатика. Учебник / О.В. Прохорова – Самара: СГАСУ, 2013. – 106 с. 31