I .14. Целочисленная арифметика — КиберПедия 

Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...

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

I .14. Целочисленная арифметика

2021-06-23 36
I .14. Целочисленная арифметика 0.00 из 5.00 0 оценок
Заказать работу

Помимо операции обычного деления "/", в языке QBasic есть еще операции целочисленного деления. Операция "\", поставленная между операндами даст нам целую часть от деления одного числа на другое.

Примеры:

С=38\5. В переменную С будет занесено число 7.

К=8\35. В переменную К будет занесено число 0.

Операция "mod", поставленная между операндами даст нам остаток от деления одного числа на другое.

Примеры:

С=38 mod 5. В переменную С будет занесено число 3.

К=8 mod 35. В переменную К будет занесено число 8.

 

В языке QBasic эти операции обладают меньшим приоритетом, чем обычное деление. Если не поставить скобок, то обычное деление будет выполняться в первую очередь, за ним "\", а уж потом "mod".

 

Задание: вычислить, что будет занесено в переменную А.

  А=((5+8-3)*4-(6+10)/4)*2\7 mod 6                       

Решение:

1) 5+8-3=10 2) 10*4=40 3) 6+10=16 4) 16/4=4  5) 40-4=36 6) 36*2=72 7) 72\7=10 8) 10 mod 6= 4      Ответ: А=4

 

 

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

Задание:

Напишите программу к решению задачи: "Официанту дали бесконечно много тарелок вместимостью 300 граммов и котел с пюре вместимостью х кг. Сколько тарелок понадобилось? Сколько осталось пюре в котле?

Решение:

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

t=x*1000\300

Упростим выражение: t=x*10\3.

Чтобы вычислить ответ на второй вопрос, надо поделить вес всего пюре на вместимость одной тарелки с остатком.

ost=x*1000 mod 300

Программа:

CLS

PRINT "введи вес пюре в кг"

INPUT X

T=X*10\3

OST=X*1000 MOD 300

PRINT "понадобилось", T, "тарелок"

PRINT "в котле осталось", OST, "граммов"

END

 

Задание: Напишите программу к решению задачи "Дано целое пятизначное число. Найти произведение его цифр".

Решение:

Пусть х – целое пятизначное число. Чтобы найти произведение цифр, надо знать сами цифры. Обозначим: х1, х2, х3, х4, х5.

Вспомним, как на математике мы раскладываем число по разрядам:

23745=2*10000+3*1000+7*100+4*10+5.

Каждая цифра обозначает, то сколько раз в числе умещается соответствующий разряд. В данном случае, максимальный разряд 10000 и он умещается в числе 2 раза.

Поэтому, чтобы узнать цифру в старшем разряде числа, просто поделим число на разряд нацело: X1=X\10000.

Но вот со следующими разрядами такое не пройдет.

23745\1000=23, а не 3, как бы нам хотелось!

23745\100=237, а не 7, как бы нам хотелось!

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

Последняя цифра в любом числе является остатком от деления числа на 10.

23745\1000  mod 10=3, значит: X2=X\1000 MOD 10.

23745\100  mod 10=7, значит: X3=X\100 MOD 10 и т.д.

Программа:

CLS

PRINT "введите пятизначное число"

INPUT X

X1=X\10000

X2=X\1000 MOD 10

X3=X\100 MOD 10

X4=X \ 10 MOD 10

X5=X MOD10

P=X1*X2*X3*X4*X5

PRINT "произведение цифр числа=", P

END

Задания для самостоятельного решения:

 

1. Напишите программу к решению задачи: "Дано двузначное число. Найти разность его цифр".

2. Напишите программу к решению задачи: "Дано трехзначное число х. Найти сумму его цифр".

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

4. Напишите программу к решению задачи: "Дано пятизначное число х. Заменить его средние цифры нулями. Например: х=12345, результат: 10005".

5. Напишите программу к решению задачи: "Дано четырехзначное число. Поменяйте местами его крайние цифры".

6. Напишите программу к решению задачи: "Дано трехзначное число. Создайте новое число, приписав к данному по краям единички".

7. Напишите программу к решению задачи: "Дано 6-изначное число. Найти сумму его цифр, стоящих на нечетных местах".

8. Напишите программу к решению задачи: "Дано 6-изначное число. Заменить единичкой цифры в нечетных разрядах".

9. Напишите программу к решению задачи: "С момента начала суток прошло К секунд. Сколько часов, минут и секунд показывают куранты?"

10. Напишите программу к решению задачи: "В чайнике умещается Х мл чая. Дежурный по столовой разливает чай по стаканам. В стакан умещается 200 мл чая. Стаканов в столовой неограниченное количество. Выведи на экран ответы на вопросы: Сколько стаканов понадобится дежурному, чтобы в чайнике ничего не осталось? Сколько мл чая будет в последнем стакане?"

 

Часть II

II.1. Линейные алгоритмы

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

"Нельзя выпить воды из стакана, если ее в стакане нет!"

"Нет смысла выполнять команду с=а+b, если до этого значения a и b не определены".

Часто бывает, что одну задачу можно решить с помощью разных алгоритмов. Поэтому, разработка алгоритма - дело сугубо творческое.

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

Линейный алгоритм - состоит из простых команд, выполняющихся последовательно, одна за другой (каждая записанная команда выполнится ровно один раз, строго по порядку).

Задание: Напишите программу к решению задачи " Незнайка в первый день выучил Х английских слов. Во второй день они выучил в два раза больше, чем в первый, а в третий – на 30% больше, чем во второй. Сколько английских слов выучил Незнайка за 3 дня?"

Решение: Для решения задачи, надо чтобы все данные были определены.

 Х - число переменное, его значение будем вводить. Чтобы найти, сколько слов выучил Незнайка за 3 дня, надо знать, сколько он выучил за каждый день, а затем сложить. Если мы знаем Х (выученные слова за первый день), то можем вычислить сколько слов было выучено за второй день. Обозначим второй день переменной D2, а третий D3. D2=2*X. D3 можно вычислить только тогда, когда вычислено D2. D3=D2+D2/100*30.

Когда количество выученных слов за каждый день известно, можно приступать к поиску суммы.

Программа:

CLS

PRINT"введи количество слов, выученное Незнайкой в 1 день"

INPUT X

D2=2*X

D3=D2+D2/100*30

S=X+D2+D3

PRINT"за 3 дня Незнайка выучил",X,"слов"

END

Задания для самостоятельного решения:

1. Выполните задание на графику

 

 0

 80

160

 240

 320

 400

 480

560

 639  
0                                

 

                             
80                                

 

                2                
160                              

 

              1 4   3            
240                              

 

                                 
320                   5            

 

                                 
400                                

 

                                 
479                                

 

1) Ваша задача нарисовать цветочек с розовыми лепестками, желтой серединкой и зелеными стебельком и листиком.

Отметьте координаты центров окружностей.

Отметьте координаты левого верхнего и правого нижнего углов прямоугольника, рисующего стебель цветка, если толщина стебля 4 пикселя.

 

Пронумеруйте действия так, чтобы получился алгоритм рисования цветка:

Рисую стебель.

Крашу части 1, 2, 3 в розовый цвет.

Рисую окружности черным цветом.

Крашу часть 4 желтым цветом.

Рисую окружности каким-нибудь цветом.

Крашу часть 5 зеленым цветом.

 

Напишите программу за компьютером и убедитесь в правильности.

2) Пусть центр левой окружности имеет координаты (х,у), а радиус окружностей имеет размер R.

Какими тогда будут координаты центров окружностей?

Определите координаты левого верхнего и правого нижнего углов прямоугольника, рисующего стебель цветка, если толщина стебля 4 пикселя, а длина равна двум радиусам.

3) Исправьте предыдущую программу, добавив ввод данных (x, y, R) и заменив статичные координаты на переменные (то, что вы вычислили в задании 2).

2. Написать программу к решению задачи: "Даны длины трех сторон треугольника в сантиметрах. Найдите периметр треугольника".

 

3.  Написать программу к решению задачи: "Свинка Нюша купила Х метров шелка. На пошив одного модного платья ей необходимо А сантиметров ткани. Остаток ткани она отдала Карычу на галстуки. Сколько платьев удалось сшить Нюше, и сколько сантиметров ткани она отдала Карычу?"

 

4. Написать программу к решению задачи: "С каждого квадратного метра грядки Крош собирает 2 ведерка морковки. Грядка имеет размеры А сантиметров в длину и В сантиметров в ширину. Сколько целых ведер морковки соберет Крош с грядки? Составьте программу, которая поможет Крошу решить эту задачу".

 

5. Напишите программу, которая запрашивает ввести цифру, а потом создает новое пятизначное число так, что эта цифра стоит в числе по середине, ее соседями являются нули, а по краям стоят цифры на единицу большие, чем данная цифра. Например: цифра=4, значит число=50405.

 

6. Напишите программу, к решению задачи. "В школе Х учащихся. Из них А - это девочки. Найти процент мальчиков в школе".

 

7. Разработайте алгоритм, к решению задачи: "В магазин «Мир музыки» пришло S покупателей. Из них b человек купили новый диск певицы Максим, a – диск Земфиры, 10 человек не купили ни одного диска. Сколько человек купили диски и Максим, и Земфиры? Напишите программу.

 

 


Поделиться с друзьями:

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

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

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.042 с.