русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Индивидуальные задания


Дата добавления: 2015-01-16; просмотров: 2297; Нарушение авторских прав


Лабораторная работа № 6 Цикл с условием

Теория

Когда не известно сколько раз проработает цикл, используются циклы с условием. Окончание цикла происходит, когда выполняется/не выполняется условие. Существует два таких оператора цикла. Это цикл с предусловием или цикл «пока», и цикл с постусловием или цикл «до».

Цикл с предусловием сначала проверяет, нужно ли выполнять операторы в цикл (тело цикла), а затем выполняет эти операторы. Блок-схема такого цикла и оператор ее реализующую:

Точно так же как и в операторе со счетчиком, если тело цикла состоит из нескольких операторов, используются операторные скобки { }. Если тело цикла состоит из одного оператора, операторные скобки можно не использовать.

В цикле с постусловием сначала выполняется тело цикла, а потом идет проверка условия выхода из цикла. Блок-схема и оператор имеет вид.

При разработке программы выбор конкретного типа цикла лучше отложить. Вна­чале следует разработать блок-схему цикла, а уже затем преобразовать блок-схему в инструкции языка C++. На этом этапе будет проще принять решение об использова­нии определенного типа цикла языка C++.

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

В большинстве прочих случаев следует использовать циклы while и do-while; выбор нужного — задача довольно легкая. Если тело цикла должно быть выполнено по крайней мере один раз, следует использовать цикл do-while. Если же возможна ситуация, когда тело цикла не будет выполняться ни разу, остановите свой выбор на цикле while. Он довольно часто используется при считывании входных данных, когда есть вероятность того, что входные данные могут отсутствовать вообще.



Оператор досрочного выхода из цикла break.

Примеры

Пример 1.

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

Исходные данные: начальное значение е=1. е – вещественное число.

Результат: значение, которое существенно для компьютера.

 

 

 

 

Пример 2.

Дан ряд целых чисел. Сколько отрицательных чисел стоит до первого нуля.

Исходные данные: члены ряда записываются в переменную a – целый тип.

Результат: количество отрицательных цифр k – целое.

Тестовый пример: для ряда 5 -9 6 -8 -3 5 9 0, k=3.

 

Пример 3.

Алгоритм Евклида. Даны целые числа A и B. Найти наибольший общий делитель этих чисел.

 

Исходные данные: A, B – целый тип

 

Результат: NOD наибольший общий делитель

 

Тестовый пример:

при A=36, B=48, НОД=12.

 

Пример 4.

Дана числовая последовательность:

{a1=8.2, a2=7.9, a3=7.6, …}

Найти сумму всех положительных членов.

 

Исходные данные:элементы последовательности а – вещественный тип.

Из приведенных данных видно, что очередной член числовой последовательности получен из предыдущего члена вычитанием 0.3.

Результат: Сумма положительных элементов последовательности S – вещественный тип.

 

Тестовый пример:S=116.2.

 

 

Пример 5.

Дано натуральное число. Определить, сколько цифр в этом числе.

Исходные данные: n – целый тип.

Результат: количество цифр k – целый тип.

Для получения количества цифр надо выполнять целочисленное деление на 10, до достижения 0.

Тестовый пример:

при n=12345, k=5.

 

 

 

 

Пример 6.

Создать программу вычисляющую

Для этого надо вычислить элементы числовой последовательности:

Найти первое значение xn, для которого |xnk-a|<10-4.

Исходные данные: a вещественный тип, k – целочисленный тип

Результат: x – вещественный тип

Тестовый пример:при a=8, k=3, x=2.

 

Пример 7.

Дано натуральное число N. Верно ли утверждение, что цифры в этом числе образуют возрастающую последовательность.

Исходные данные: N целый тип.

Результат: ключ k – равен нулю, если последовательность цифр возрастает, единице, если не возрастает.

Для сокращения числа на 1 цифру делим число на 10, для получения цифр в числе вычисляем остаток от деления на 10. Чтобы сравнивать две цифры используем переменные а и b. а – правая цифра в паре, b – левая цифра в паре.

Тестовый пример:

при N=35679 вывод ‘возрастает’;

при N=35479 вывод ‘не возрастает’.

 

 

 

Пример 8.

Даны натуральное число n, символы. Известно, что символ s1 отличен от восклицательного знака и что среди s2, s3, … есть по крайней мере один восклицательный знак. Пусть – символы данной последовательности, предшествующие первому восклицательному знаку (n заранее неизвестно). Выяснить, верно ли, что среди символов имеются все буквы, входящие в слово дом.

Исходные данные: элементы последовательности s – символьный тип.

Результат: количество букв «о» о – цедый тип, количество букв «д» d – целый тип, количество букв «м» m – целый тип. Если каждое из этих значений больше 0 – из символов последовательности можно составить слово «дом».

Тестовый пример:

при вводе последовательности ‘имркпоовдя!’ – вывод ‘можно’

при вводе последовательности ‘имркпгрпоовя!’ – вывод ‘нельзя’

 

 

 

Задание 2 Написать и отладить программу для примеров 21 и 22.

Контрольные вопросы.

1. Когда надо использовать цикл «до», а когда цикл «пока».

2. К какому виду цикла относится цикл со счетчиком.

3. Какой из 3 циклов является универсальным.

4. Укажите, в каких ситуациях вместо цикла со счетчиком приходится использовать цикл while.

5. Всегда ли цикл while можно заменить циклом do.

6. Какой оператор надо использовать, если надо досрочно выйти из цикла.

7. Что означает условие выхода из цикла в примере 15.

8. Что такое наибольший общий делитель и каком алгоритм его нахождения.

9. Как можно сократить пример 20.

Индивидуальные задания

1.Спортсмен в первый день пробежал 10 км. Каждый следующий день он увеличивал дневную норму на 10% от результата предыдущего дня. Найти через сколько дней спортсмен пробежит суммарный путь более 100 км?

2.Сколько чисел нужно взять в последовательности чтобы получить число, больше чем N?

 

3.Шары расположены в форме треугольника так, что в первом ряду находится один шар, во втором – два, в третьем – три и так далее. Сколько рядов удастся построить, если имеется N шаров?

4. Вывести значения K, для которых Z=U+M-20K+T больше 0,

2U, если M<2

где K= U, если 2£M£4

1-M, если M>4

и U=3M+1,

M изменяется от 0 до 6 с шагом 1.5, Т – произвольное число.

 

5.Дано натуральное n. Выяснить, входит ли цифра 3 в запись числа n2.

6.Дано натуральное n. Чему равна сумма его цифр?

7.Даны действительные числа x, y (x>1, y>1). Получить целое число k, удовлетворяющее условию

8.Даны натуральное число n, символы. Известно, что символ s1 отличен от восклицательного знака и что среди s2, s3, … есть по крайней мере один восклицательный знак. Пусть – символы данной последовательности, предшествующие первому восклицательному знаку (n заранее неизвестно). Определить количество пробелов среди s1, …, sn .

9.Даны натуральное число n, символы. Известно, что символ s1 отличен от восклицательного знака и что среди s2, s3, … есть по крайней мере один восклицательный знак. Пусть – символы данной последовательности, предшествующие первому восклицательному знаку (n заранее неизвестно). Выяснить, имеется ли среди s1, …, sn пара соседствующих одинаковых символов.

10.Даны натуральное число n, символы. Известно, что символ s1 отличен от восклицательного знака и что среди s2, s3, … есть по крайней мере один восклицательный знак. Пусть – символы данной последовательности, предшествующие первому восклицательному знаку (n заранее неизвестно). Выяснить, верно ли, что в последовательности имеются пять идущих подряд букв е.

11.Дано натуральное число N. Если число содержит 5 цифр, то получить новое число M, которое образуется путем исключения средней цифры исходного числа Если количество цифр не 5, то M=N.

12.Среди всех n-значных чисел указать те, сумма цифр которых равна заданному числу k.

 

 



<== предыдущая лекция | следующая лекция ==>
Раздел 3. Практическая реализация программы на микроконтроллере | Дифференциальные уравнения


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.158 сек.