Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/12: Рейтинг темы: голосов - 12, средняя оценка - 4.50
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
1

Управляющие структуры [while, if]

10.10.2010, 21:24. Показов 2154. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Текст задачи
Из-за высокой цены бензина водители озабочены затратами топлива
своих автомобилей. Один водитель взял в рейс несколько емкостей
бензина, записывая пройденные мили и бензин, использованный из
каждой емкости. Разработайте программу на C++, которая вводила
бы пробег в милях и бензин, использованный из каждой емкости.
Программа должна рассчитывать и выводить на экран число миль
на галлон для каждой емкости. После ввода исходных данных про-
грамма должна рассчитать и напечатать значение среднего числа
миль на галлон, полученное для всех емкостей.

Пример вывода:
Введите расход бензина (-1, если ввод закончен) : 12.8
Введите пройденный путь: 287
Управляющие структуры 165
Для эфой емкости получено миль / галлон 22.421875
Введите расход бензина (-1, если ввод закончен) : 10.3
Введите пройденный путь: 200
Для этой емкости получено миль / галлон 19.417475
Введите расход бензина (-1, если ввод закончен) : 5
Введите пройденный путь: 120
Для этой емкости получено миль / галлон 24.000000
Введите расход бензина (-1, если ввод закончен) : -1
Средний расход бензина 21.601423


Вот мой код который я сделал его надо заключить правильно в цикл и добавить метку,
у самого пока не получаеться, как реализовать? Помогите ответом пожалуйста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
#include <iomanip>
#include <windows.h>
using  namespace std;
 
main ()
{
     setlocale( LC_ALL,"Russian" );
     float result; // Переменная результата
     int benz, way, prom;
     benz = 0;
     way = 0;
     
     cout << "Введите расход бензина: ";
     cin >> benz;
     
     cout << "Введите пройденный путь: ";
     cin >> way;
     
     prom = way / benz;
     cout << "для этой ёмкости получено миль \ галлон: " << prom;
     
     system("PAUSE");
     return EXIT_SUCCESS;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.10.2010, 21:24
Ответы с готовыми решениями:

Управляющие структуры
Помогите отобразить натуральное число, которое вводит пользователь, в виде: 1 22 333 4444...

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

Управляющие структуры. Программирование алгоритмов разветвляющейся структуры.
как это в delphi выполнить?((( Вычислить объем и площадь полной поверхности цилиндра, если...

Управляющие структуры
1. Вычислить сумму чисел Фибоначчи , значение которых не превосходит 500. 2.Даны целые числа ...

12
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
10.10.2010, 21:32 2
Ага?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
#include <iomanip>
//#include <windows.h>
using  namespace std;
 
int main ()
{
     setlocale( LC_ALL,"Russian" );
     float result=0, benz, prom; // Переменная результата
     int way;
     int cnt=0;
     while(1)
     {
     cout << "Введите расход бензина: ";
     cin >> benz;
     if(benz==-1)
         break;
     cout << "Введите пройденный путь: ";
     cin >> way;
     
     prom = way / benz;
     cout << "для этой ёмкости получено миль \ галлон: " << prom;
     cnt++;
     result+=prom;
     }
     cout<<"Среднее: "<< result/cnt <<'\n';
     system("PAUSE");
     return EXIT_SUCCESS;
}
0
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
11.10.2010, 12:37  [ТС] 3
хм почему если переменная benz обьявлена как float, при вводе например 1.4 происходит не весть значет что с программой - тупо закрывать надо?
Обьясните ньюансы пожалуйста

Добавлено через 1 час 27 минут
Хм что то не так)
http://codepad.org/HWPslrOI
0
899 / 793 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
11.10.2010, 12:43 4
C++
1
cout << "для этой ёмкости получено миль '\' галлон: " << prom;
1
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
11.10.2010, 12:46  [ТС] 5
А как сделать чтобы можно было вводить не целые данные бензина -1.3 и т.д.
Ведь в книге показано не только целые цисла, подскажите ибо код Lavroff не совсем корректен
0
899 / 793 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
11.10.2010, 12:52 6
А в чем собственно проблема? Код, который выложыл Lavroff у меня нормально работает с не целыми числами.

Добавлено через 3 минуты
http://codepad.org/3VInx2i3
0
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
11.10.2010, 12:56  [ТС] 7
Ааа всё понял) вся проблема была в том что я вводил числа подобные: 1,4 12,2 6,7 а надо 1.4 12.2 6.7
Понял из вашего кода...

А собственно говоря к слову почему нельзя водить чилса с запятой?
0
Бродяга
314 / 268 / 56
Регистрация: 27.08.2010
Сообщений: 553
11.10.2010, 13:25 8
Видимо потому, что запятая это отдельный оператор. "Бинарный оператор, результат работы которого - второй операнд". Например, попробуйте такой код:
C++
1
2
3
int x;
x = (7,2);
cout<<x;
1
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
11.10.2010, 13:29  [ТС] 9
Цитата Сообщение от dihlofos Посмотреть сообщение
Видимо потому, что запятая это отдельный оператор. "Бинарный оператор, результат работы которого - второй операнд". Например, попробуйте такой код:
C++
1
2
3
int x;
x = (7,2);
cout<<x;
Да ты прав ... спасибо
0
21 / 21 / 5
Регистрация: 14.06.2010
Сообщений: 108
11.10.2010, 13:59 10
TBIKC, америкосы пишут через точку, да и англичане тоже... вот и нас заставляют
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
11.10.2010, 19:48 11
dihlofos,
Ну а к консоли-то это какое отношение имеет? Там запятая, такой же символ, как и все остальные. А всё дело в локали, в американской разделителем целой и дробной части служит точка, в русской - запятая. Но работает консоль по умолчанию в американской локали, потому надо для разделения вводить точку.
1
Бродяга
314 / 268 / 56
Регистрация: 27.08.2010
Сообщений: 553
12.10.2010, 06:21 12
Цитата Сообщение от silent_1991 Посмотреть сообщение
Ну а к консоли-то это какое отношение имеет?
Упс, извиняюсь, не обратил внимание, что это с консоли вводилось. Надо будет темы полностью читать)
0
Эксперт С++
5055 / 3115 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
12.10.2010, 08:25 13
dihlofos,
Угу, иногда полезно
0
12.10.2010, 08:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.10.2010, 08:25
Помогаю со студенческими работами здесь

Управляющие структуры в Python
Для заданного (преподавателем) значения переменной nn необходимо: - вывести все целые числа от 0...

Lisp - Управляющие структуры
Помогите разработать функцию с применением управляющих конструкций: DO &quot;с телом&quot;, DO &quot;без тела&quot;,...

Массив умножения (управляющие структуры)
Помогите разработать функцию с применением управляющих конструкций: DO &quot;с телом&quot;, DO &quot;без тела&quot;,...

Составить программу последовательно используя для решения задачи все три циклические управляющие структуры
Помогите пожалуйста сижу 4 час не могу составить алгоритм и программу. Составить программу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru