Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка С++.doc
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
750 Кб
Скачать
☆

Задание 2. Программирование линейных алгоритмов

Цель задания

Освоение навыков программирования линейных алгоритмов.

Постановка задачи

Запрограммировать указанную формулу, используя стандартные функции и правила записи формул на языке С++.

Методические указания

  1. Обязательно подключить библиотеку math.h

  2. Если в формуле встречается функция, отсутствующая в С++, то ее выразить через функции, имеющиеся в языке, например, функция возведения в степень может быть выражена через функции экспоненты и логарифма:

y5 как exp(5*ln(y))

  1. Подчеркивать полученный результат не обязательно!!!

Пример

Исходные данные: ;

Ответ задачи выдать на экран в следующем виде:

  1. отступить 10 позиций и напечатать слова “ ИСХОДНЫЕ ДАННЫЕ”;

  2. под заголовком отпечатать значения исходных данных в виде:

А=…….

В=…….

К=…….

Х=…….

  1. пропустить две строки и напечатать в центре ответ в виде:

Y=…….

Порядок выполнения

  1. Определяем количество необходимых данных: заданы значения четырех переменных a, b, k, x; для результата заведем отдельную новую переменную y.

  2. По виду приведенных значений для исходных данных определяем их тип: a, b, x – вещественные, результат y – тоже вещественный, так как для вычисления значения y используются вещественные переменные и, кроме того, в формуле участвуют стандартные функции cos, exp и т.п., всегда дающие вещественный результат.

  3. Можно приступить к кодированию:

//---------------------------------------------------------------------------

#include <vcl.h>

#include <stdio.h>

#include <conio.h>

#include <math.h>

#pragma hdrstop

//---------------------------------------------------------------------------

#pragma argsused

int main(int argc, char* argv[])

{

float a = -1.7, b = 2.32, x = 5.7, y = 0;

int k = 5;

y = sqrt (abs((cos(k*x)-b)/(a*a+b*b))) - exp (abs(a-b))+sin (k*k*x)

/ cos (k*k*x) / (a - sin (k*x));

printf ("Ishodnie dannie:\n a = %4.1f\n b = %4.2f\n x = %3.1f\n k = %2d\n\n\n",a,b,x,k);

printf (" y= %8.3f\n",y);

printf("Nagmite lubuu klavishu\n");

getch();

return 0;

}

//---------------------------------------------------------------------------

  1. Результат работы программы:

Варианты заданий

1 вариант.

Исходные данные: x = -2,32 y = 3

Ответ задачи выдать на экран в следующем виде:

А) отступить 20 позиций и отпечатать слова «ИСХОДНЫЕ ДАННЫЕ»

Б) под словами отпечатать значения исходных данных в виде:

Х = … Y = …

В) последнюю строку подчеркнуть

Г) пропустить две строки

Д) в центре следующей строки отпечатать ответ в виде: Z = …

2 вариант.

Исходные данные: x = -1,26

Ответ задачи выдать на экран в следующем виде:

А) в центре напечатать слова «Я РЕШИЛ(А) ЗАДАЧУ»

Б) пропустить две строки

В) под заголовком напечатать исходные данные в виде:

Х = …

Г) подчеркнуть строку

Д) пропустить две строки

Е) в центре напечатать ответ в виде: ОТВЕТ ЗАДАЧИ: …

3 вариант.

Исходные данные: x = -0,5 y = 3 с = 2,4

Ответ задачи выдать на экран в следующем виде:

А) отступить 5 позиций и вывести слова «МОЯ ЗАДАЧА РЕШЕНА»

Б) подчеркнуть эти слова символом «*»

В) под словами вывести ответ в виде: Z = …

Г) пропустить три строки

Д) вывести значения исходных данных в виде:

X = … Y = … C = …

4 вариант.

Исходные данные: x = 0,3 y = 0,2 с = 4

Ответ задачи выдать на экран в следующем виде:

А) отступив 10 позиций, вывести заголовок “ИСХОДНЫЕ ДАННЫЕ”

Б) под заголовком одно под другим вывести значения исходных данных

В) пропустить две строки

Г) В центре следующей строки вывести ответ в виде Z = …

Д) подчеркнуть ответ

5 вариант.

Исходные данные: x = 2 y = -2,1 z = 3,4

Ответ задачи выдать на экран в следующем виде:

А) отступить 40 позиций и вывести «ЗАДАЧА РЕШЕНА»

Б) под словами вывести ответ в виде: S = …

В) подчеркнуть ответ

Г) пропустить три строки

Д) вывести значения исходных данных в виде:

ИСХОДНЫЕ ДАННЫЕ: X : … Y : … Z : …

6 вариант.

Исходные данные: x = -5 y = 0,3 z = -1,3

Ответ задачи выдать на экран в следующем виде:

А) отступив 5 позиций, вывести исходные данные в виде:

x = …

y = …

z = …

Б) пропустить три строки

В) в центре строки вывести «ОТВЕТ ЗАДАЧИ»

Г) подчеркнуть эти слова

Д) под словами вывести ответ

7 вариант.

Исходные данные: x = -1,5 y = 3

Ответ задачи выдать на экран в следующем виде:

А) в центре строки вывести ответ в виде:

ОТВЕТ : …

Б) подчеркнуть ответ

В) пропустить три строки и вывести через 10 пробелов наименования исходных данных:

x y

Г) под соответствующими именами вывести значения этих переменных

Д) на следующей строке в центре вывести «КОНЕЦ ЗАДАЧИ»

8 вариант.

Исходные данные: x = 2 y = -3,76 z = 2,4

Ответ задачи выдать на экран в следующем виде:

А) вывести в центре строки заголовок «ИСХОДНЫЕ ДАННЫЕ»

Б) подчеркнуть символом «–»

В) подзаголовком вывести значения исходных данных в виде:

x = … y = …

z = …

Г) пропустить две строки

Д) в центре следующей вывести ответ в виде: Т = …

9 вариант.

Исходные данные: x = -5 y = 0,2 z = 1,31

Ответ задачи выдать на экран в следующем виде:

А) отступить 10 позиций и вывести «ЗАДАЧА РЕШЕНА»

Б) под словами вывести ответ в виде: Т = …

В) подчеркнуть ответ символом «–»

Г) пропустить две строки

Д) вывести значения исходных данных:

x = … y = …

z = …

10 вариант.

Исходные данные: x = 0,5 y = -1 z = -6,4

Ответ задачи выдать на экран в следующем виде:

А) отступить 25 позиций и вывести «ИСХОДНЫЕ ДАННЫЕ»

Б) под заголовком вывести значения исходных данных:

x = …

y = …

z = …

В) подчеркнуть последнюю строку

Г) пропустить две строки

Д) вывести в центре строки ответ в виде: N = …

11 вариант.

Исходные данные: i=2.

Ответ решаемой задачи выдать в следующем виде:

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

А С D X I

  1. на следующей строке под названием отпечатать значение соответствующей переменной;

  2. пропустить 3 строки;

  3. отступить 10 позиций и отпечатать ответ в виде:

Y=…

  1. на следующей строке справа отпечатать слово “КОНЕЦ”.