Практическое занятие № 3

ТЕМА: Создание программ с операторами циклов

ЦЕЛЬ РАБОТЫ: получить практические навыки по использованию операторов цикла в программах на С++

 

Ход работы

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

prwork03_1

2. Результат вывести с точностью до 3 знаков;

3. Провести табулирование функции Y=SIN X на отрезке [a,b] с шагом 0,75. Начало и конец отрезка задать с клавиатуры. При этом программу оформить со следующими параметрами:

3.1. На экран выдать заголовок в виде:

Аргумент (Х)    Функция (Y);

3.2. Ниже в два столбца выдать значения аргумента и функции с точностью до 3 знаков;

3.3 Задачу решить с помощью всех возможных видов цикла

 

Выполнение работы

#include <iostream.h>

#include <math.h>

 

int main()

{

 

system("chcp 1251>nul");

//описываем переменные

float x,M,L;

int a,b,i;

 

//задание 1

//очищаем экран

system("cls");

cout<<"Задача 1\n";

//вводим исходные данные

cout<<"Введите значение х: ";

cin>>x;

//считаем значение функции L

if (x<=4)

      L=1-pow(x,2)/3;

else

      for (L=0, b=1; b<=10; b++)

            L+=pow(sin(pow(x,b)),2);

//считаем значение функции М 

for (M=1, i=1; i<=8; i++)

      M*=(pow(x,i)-sqrt(i));

//задаем точность вывода до 3 знаков 

cout.precision(3);

//выдаем результат

cout<<"При х="<<x<<" функция L="<<L<<", функция М="<<M+L<<"\n";

//делаем паузу для просмотра 

cout<<"Для продолжения нажмите любую клавишу...\n\n";

system("pause");

 

//задача 2

//очищаем экран

system("cls");

cout<<"Задача 2\n";

//вводим исходные данные

cout<<"Введите концы отрезка (a и b): ";

cin>>a>>b;

 

//выдаем таблицу значений функции с помощью цикла for

cout<<"Решение с помощью цикла for...\n";

cout<<"x\ty\n";

for (x=a; x<=b; x+=0.75)

      cout<<x<<"\t"<<sin(x)<<"\n";

//делаем паузу для просмотра 

cout<<"Для продолжения нажмите любую клавишу...\n\n";

system("pause"); 

 

//выдаем таблицу значений функции с помощью цикла while

system("cls"); 

cout<<"Решение с помощью цикла while...\n";

cout<<"x\ty\n";

x=a;

while (x<=b)

{

cout<<x<<"\t"<<sin(x)<<"\n";

x+=0.75;

}

//делаем паузу для просмотра 

cout<<"Для продолжения нажмите любую клавишу...\n\n";

system("pause"); 

 

//задача 3

//выдаем таблицу значений функции с помощью цикла do while

system("cls"); 

cout<<"Решение с помощью цикла do while...\n";

cout<<"x\ty\n";

x=a;

do

{

cout<<x<<"\t"<<sin(x)<<"\n";

x+=0.75;

}

while (x<=b);

//делаем паузу для просмотра 

cout<<"Для продолжения нажмите любую клавишу...\n\n";

system("pause"); 

return 0;

}

 

Решить самостоятельно:

Решение задач оформить в одной программе с меню. В меню предусмотреть пункт выхода.

 

1. Составить алгоритм вывода таблицы перевода расстояния в дюймах в сантиметры для значений 10, 11,.... 22 дюйма (1 дюйм = 2,54 см). Задачу решить с помощью цикла for.

 

2. Составить алгоритм вывода пятнадцати первых нечетных чисел. Задачу решить с помощью цикла for.

 

3. Составить алгоритм вывода стоимости 2, 3, …, 10 кг конфет (цена 1 кг конфет вводится произвольно). Задачу решить с помощью цикла for.

 

4. Даны два целых числа A и B (A < B). Составить алгоритм вывода всех целых чисел, расположенных между данными числами (не включая сами эти числа), в порядке их возрастания. Задачу решить с помощью цикла while.

 

5 . Составить алгоритм вывода всех натуральных чисел, кратных одиннадцати, меньше 100. Задачу решить с помощью цикла while.