Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПО_ЛР_30.docx
Скачиваний:
32
Добавлен:
27.09.2019
Размер:
98.95 Кб
Скачать

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

Условие задачи. Ввести с клавиатуры целые i1, i2, i3 и действительное a величины. Вычислить

Введенные величины и результаты расчетов вывести в файл ff.txt и на экран. Целые значения выводить желтым цветом, действительные - белым цветом. Экран предварительно окрасить си-ним цветом.

Программа

*************************************************************************************************

Лабораторная работа № 30.

Организация ввода-вывода Программирование линейной задачи.

Автор Иванов Егор, гр. ЭВС-32

#include <stdio.h>

#include <conio.h> // подключение библиотек

void main() // заголовок главной функции

{ int i1, i2, i2, gamma;

double a, alpha,beta; // описание переменных

textbackground (BLUE);

clrscr();// окраска экрана

/* Ввод исходных данных */

printf (“ Введите целые i1, i2, i3 и действительное a > ”);

scanf (“ %i %i %i %lf”, &i1, &i2, &i 3, &a);

/* вычисления */

alpha = 3.0/4*(i1 + i2)/i2 + 2.0/3*(i2 + i3)/i1;

beta = (a + (double) i1/(i2* i3))/(a + (double)i1*i3/i2);

gamma = i1*i2 + i2*i3 + i3*i1;

/* вывод результатов в файл */

FILE * file; File = fopen(“A:\\ff.txt”, “w”); // открытие файла

fprintf(file, “\n i1 = %i i2 = %i i3 = %i a = %lf”

“\n alpha = %lf beta = %lf gamma = %i”,

i1, i2, i3, a, alpha, beta, gamma); //вывод в файл

fclose(file); // закрытие файла

/* вывод результатов на экран */

textcolor(YELLOW); // установка цвета символов для вывода

// данных целого типа

cprintf («\n\n Целые: i1 = %d i2 = %d i3 = %d gamma = %d», i1, i2, i3, gamma);

textcolor (WHITE); // установка цвета символов для

// вывода данных действительного типа

cprintf(“\n Целые: i1 = %i i2 = %i i3 = %i” “\nДействительные: a = %.3lf alpha = %.3lf beta = %.3lf”, i1,i2,i3,a,alpha,beta);

getch(); // ожидание нажатия любой клавиши

}

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

Введите целые i1, i2, i3 и действительное a > 1 2 3 1.5

Целые: i1 = 1 i2 = 2 i3 = 3 gamma = 11

Действительные: a = 1,5 alpha = 2,417 beta = 0,556

1.6. Типичные ошибки при выполнении работы

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

При программировании выражения типа часто используется некорректная форма записи a/b*c, которая интерпретируется компилятором в виде . Правильные варианты: a/b/c или a/(b*c).

1.7. Требования к студентам

В результате выполнения работы студенты должны:

  • знать структуру программы на языке С. Уметь корректировать текст программы, в частности уметь выделить, удалить, скопиро­вать, перенести в заданное место, отыскать по образцу и заме­нить фрагмент программы, используя для этого встроенные возможности среды ВС;

  • уметь транслировать и выполнять программы в среде ВС;

  • знать операции языка С;

  • знать правила записи и уметь корректно записывать сложные арифметические выражения на языке С. Знать приоритеты арифметических операций и правила преобразования типов данных при выполнении этих операций;

  • уметь программировать операции ввода-вывода при работе с консолью и файлами;

  • знать основные функции для управления выводом информации на экран монитора.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]