среда, 9 марта 2016 г.

Задача № 1. Консольное приложение в СП Visual C++

Задание

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

2. Напишите программу, реализующую Вашу задачу. В программе обязательно должны присутствовать:
цикл for;
совмещение операции присваивания с бинарными операциями (например, a+=b);
операторы scanf и printf .

3.Найдите ответы на Контрольные вопросы по теме "Введение в С/С++"

После этого защитить задачу будет нетрудно.


Указания:

 

Задача предполагает обязательную распечатку таблицы и расчет суммы или числа слагаемых (всех имеющихся или удовлетворяющих некоторому условию).
Рассмотрим задачу
Написать программу, которая распечатывает таблицу стоимости почтовой пересылки для значений веса посылки  от Рn  до Рk кг с шагом 0.5 кг, если пересылка 1 кг стоит 53 руб.  Подсчитать количество строк в таблице. 

План программы:
1.Ввести с клавиатуры значения Рn  и Рk.
2. Напечатать Заголовок таблицы.
3. Написать цикл, на каждом шаге которого
§ вычисляется номер строки i;
§ вычисляется текущее значение веса P;
§ вычисляется стоимость пересылки этого веса St;
§ печатается номер строки, вес и стоимость.

4. Закончить печать таблицы
5. Вывести число строк таблицы

Программа будет выглядеть примерно так (см. пояснения после текста программы и комментарии после // в строках):

#include <stdio.h> // подключаем библиотеку стандартного ввода-вывода
void main()
{
float pn,pk,P,St;
int i=0;
printf("pn,pk="); //вывод сопровождающего текста
scanf("%f%f",&pn,&pk); //ввод с клавиатуры
printf(" N=%.1f, K=%.1f \n",pn,pk);
printf("---------------------------- \n"); // печать заголовка таблицы
printf(" | i | P (kg) | St (rub) |\n");
printf("---------------------------- \n");
for(P=pn;P<=pk;P+=0.5, i++) //начало цикла: Р изменяется от нач до кон.
{ // значения
St=P*53;
printf(" | %2d | %6.3f | %6.3f |\n",i,P,St);
} //конец цикла
printf("---------------------------- \n");
printf(" chislo strok i=%d \n",i);
}

Цикл повторяет выполнение операторов, стоящих в теле цикла, пока условие внутри скобок в строке for верно. Тело цикла составляет один оператор после for() или блок в скобках { }, записанный сразу после for.
Операторы ввода (scanf) и вывода (printf) содержат форматы, которые показывают, как вводить (выводить) данную переменную. Например, формат %d служит для вывода целых данных. %2d   показывает, что на данное отводится 2 позиции. %6.3fпоказывает, что на выводимое вещественное данное отводится всего 6 позиций, из них 3 –после десятичной точки. Чтобы таблица была прямой, нужно записать такой формат, чтобы в него вмещалось самое длинное выводимое число.

Если нужно считать не полное число вычисляемых в цикле величин, а только удовлетворяющие определенному условию, воспользуйтесь оператором if^
if (P>5 && P<10) k++;
- в данном случае k- число значений Р в интервале 5<P<10.

Комментариев нет:

Отправить комментарий