Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ин фа.doc
Скачиваний:
4
Добавлен:
08.11.2018
Размер:
1.06 Mб
Скачать

2. Задание

1. Разработать программу форматного ввода-вывода объектов, значениями которых являются: целое число, вещественное число, символ, символьная строка. Вывод значений этих объектов произвести в таблице следующего вида.

Имя объекта

Значение объекта

Перед завершением работы программы организовать паузу для просмотра результатов.

2. Модифицировать программу таким образом, чтобы ввод объектов, значениями которых являются символы и их последовательности, производился с помощью функций неформатного ввода.

Лабораторная работа № 6 Программирование линейных и разветвляющихся вычислительных процессов

1. Справочная информация

При программировании вычислительных процессов используются математические функции библиотеки компилятора. Для обеспечения возможности обращения к ним в программе должна указываться директива препроцессора #include <math.h>. Все математические функции результатом своей работы имеют вещественные числа типа double. Описание некоторых функций дано в таблице.

функция

назначение функции

значения аргумента

sin(x)

вычисляет синус угла x

вещественное число в диапазоне от –2 до 2

cos(x)

вычисляет косинус угла x

tan(x)

вычисляет тангенс угла x

asin(x)

вычисляет арксинус величины x

вещественное число в диапазоне от –1 до 1

acos(x)

вычисляет арккосинус величины x

atan(x)

вычисляет арктангенс величины x

sqrt(x)

вычисляет корень квадратный из x

любое вещественное число

exp(x)

вычисляет значение e в степени x

log(x)

вычисляет натуральный логарифм от x

log10(x)

вычисляет десятичный логарифм от x

ceil(x)

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

floor(x)

округляет число х до наибольшего целого, не превышающего х

pow(x,y)

вычисляет значение x в степени y

любые вещественные числа

fmod(x,y)

вычисляет остаток от деления x на y

Для организации разветвляющихся процессов используются условный оператор if и оператор-переключатель switch.

Формат записи оператора if :

if(<условное выражение>) <оператор1>

[else <оператор2>]

Формат записи оператора switch:

switch(<выражение>)

{

case<константа1>: <оператор1>

[break;]

case<константа2>: <оператор2>

[break;]

........................................................

default : <оператор>

}

Пример программы

#include <stdio.h>

#include <math.h>

void main(void)

{ int war;

float x,y,z;

printf("\nПpогpамма счета зависимостей:"

"\n1. z=3.55-(sin(x)+4.5)*y "

"\n2. z=(3.4*ln(x)+8.6)/2.3*y (переменная y больше нуля) ");

printf("\nЗадайте вид зависимости\n");

ab: scanf("%d",&war);

switch(war)

{ case 1: printf("\nЗадайте значения пеpеменных х и y\n");

scanf("%g,%g",&x,&y);

z=3.55-(sin(x)+4.5)*y;

printf("\nz=%f",z);

break;

case 2: printf("\nЗадайте значения пеpеменных х и y\n");

scanf("%g,%g",&x,&y);

if(y>0)

{

z=(3.4*log(x)+8.6)/2.3*y;

printf("\nz=%f",z);

}

else

printf("\nHевеpно заданo значение пеpеменной z!!!");

“\nОно должно быть больше нуля”);

break;

default: printf("\nHевеpно задан вид зависимости!!!"

"\nЗадайте вид зависимости заново");

goto ab;

}

}

2. Задание

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

Лабораторная работа № 7

Программирование циклических вычислительных процессов

1. Справочная информация

При усложнении решаемых задач ход выполнения программ становится более неопределенным. Чтобы иметь возможность управлять процессом выполнения программ, его организацией, используются такие структуры, как циклы. Циклы необходимы, когда надо повторить некоторые действия несколько раз, как правило, пока выполняется некоторое условие. В языке С известно три вида операторов цикла: for, while и do-while.