Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Вопросы для контроля. Улучшенная программа задачи 5.2




Улучшенная программа задачи 5.2

 

/* Программа с использованием цикла с параметром */

#include <stdlib.h>

#include <stdio.h> /* директивы */

#include <math.h> /* препроцессора */

#include <conio.h>

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

{

float c[7], /* массив значений стоимостей кладов */

p[7], /* массив значений начисленных премий */

pro; /* процент вознаграждения */

int n, i, /* размер массивов (количество кладов), параметр цикла */

d, t; /* переменные, определяющие печать на принтер и повторение */

do /* начало цикла для повторения вычислений */

{

clrscr(); /* очистка экрана */

printf("Вывод на печать – 1, \n"

"иначе – другая цифра: "); /* вывод запроса */

scanf("%d", &d); /* ввод значения переменной, определяющей печать на принтер (ответ на запрос) */

printf("Введите размер массива (от 1 до 7): ");

scanf("%d", &n); /* ввод размера массивов */

for(i=0; i < n; i++) /* заголовок цикла ввода исходного массива (массив стоимостей кладов) */

{

printf("Введите значение стоимости клада "

"c(%d), тыс. р.: ", i+1);

scanf("%f", &c[i]); /* ввод значения элемента массива */

}

printf("Введите размер вознаграждения, проц.: ");

scanf("%f", &pro); /* ввод значения процента вознаграждения */

/* вывод процента вознаграждения и шапки таблицы на экран */

printf("\n Размер вознаграждения....: %.1f проц. \n", pro);

printf(" +––––––––––––+–––––––––––+\n"

" | Стоимость | Премия |\n"

" | клада c(i) | п(i) |\n"

" +––––––––––––+–––––––––––+\n");

if(d == 1) /* проверка условия вывода на принтер */

{

/* вывод процента вознаграждения и шапки таблицы на принтер */

fprintf(stdprn,"\n Размер вознаграждения: "

"%.1f проц. \n", pro);

fprintf(stdprn," +––––––––––––+–––––––––––+\n"

" | Стоимость | Премия |\n"

" | клада c(i) | п(i) |\n"

" +––––––––––––+–––––––––––+\n");

}

for(i=0; i < n; i++) /* заголовок цикла вычисления значения функции (расчет премий) */

{

p[ i ] = (c[ i ] * pro) / 100.; /* вычисление текущего значения */

/* вывод текущих значений элементов массивов на экран */

printf(" | %7.2f | %8.3f |\n", c[ i ], p[ i ]);

if(d == 1) /* проверка условия вывода на принтер */

{

/* вывод текущих значений элементов массивов на принтер */

fprintf(stdprn," | %7.2f | %8.3f |\n"

, c[ i ], p[ i ]);

}

}

printf(" +––––––––––––+–––––––––––+\n");

if(d == 1) /* проверка условия вывода на принтер */

{

fprintf(stdprn, " +––––––––––––+–––––––––––+\n");

}

printf("Повторение решения – 1, \n"

"выход – другая цифра: "); /* вывод запроса */

scanf("%d", &t); /* ввод значения переменной, определяющей повторение вычислений (ответ на запрос) */

}while(t==1); /* окончание цикла, организующего повторение */

} /* завершающая скобка головной функции */

Численные значения вводимых данных не показаны.

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

 

1. Что такое улучшение качества программных продуктов и в чём оно заключается?

2. Для чего используются укороченные спецификаторы ввода-вывода?

3. Как влияет максимально укороченный спецификатор на точность выводимых вещественных переменных?

4. Как выглядят фрагменты алгоритмов и программ для организации диалогового ввода переменных?

5. Каковы варианты организации ввода массивов?

6. Как формулируется методика оформления выводимых данных?

7. Как формируются и используются составные присваивания?

8. Каковы фрагменты организации выбора устройства вывода?

9. Для чего и как реализуется в программе повторение расчётов?

10. Что такое позиционирование курсора, как реализуется?

 




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 214; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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