Форум программистов, компьютерный форум CyberForum.ru

Задачка с путешественником. "Основные операторы С++" - C++

Восстановить пароль Регистрация
 
stalker161reg
0 / 0 / 0
Регистрация: 09.11.2013
Сообщений: 15
28.05.2014, 00:05     Задачка с путешественником. "Основные операторы С++" #1
Тема: основные операторы языка С++.

Путешественник располагает суммой Р рублей. Он может двигаться со скоростью 5км/ч бесплатно, со скоростью 40 км/ч за 14руб или со скоростью 80 км/ч за 10р/км. Определить сможет ли он преодолеть расстояние S за время Т. Если сможет, то каким образом.

Помогите написать на С++. Спасибо заранее )
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.05.2014, 00:05     Задачка с путешественником. "Основные операторы С++"
Посмотрите здесь:

C++ Описать класс "множество", позваляющий выполнять основные операции
C++ DEV-C++ операторы ".", "::" как в VS
C++ "Классы и объекты" -"операторы"
C++ Не получается переопределить операторы "+" и "="
Описать класс "множество", позволяющий выполнять основные операции - добавления и удаление элемента, пересечение, множеств, объединение и разность мно C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
lawr
 Аватар для lawr
350 / 244 / 120
Регистрация: 09.05.2014
Сообщений: 738
28.05.2014, 15:41     Задачка с путешественником. "Основные операторы С++" #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
30
31
#include <iostream>
using namespace std;
void main()
{
    setlocale(LC_ALL, "Russian"); 
    float Speed [3]= {5, 40, 80};
    float Cost [3]= {0, 14, 10};
    int p, s, t;
    bool metod1=false, metod2=false, metod3=false;
    cout<<"введите сумму, которой располагает путешественник, руб.\n";
    cin>>p; 
    if (p<0) return;
    cout<<"расстояние, которое необходимо преодолеть, км\n";
    cin>>s; 
    if (s<0) return;
    cout<<"время на преодоление расстояния\n";
    cin>>t;
    if (t<0) return;
    if (s/Speed[0]<=t) metod1=true;
    if (s/Speed[1]<=t&&Cost[1]<=p) metod2=true;
    if (s/Speed[2]<=t&&Cost[2]*s/10<=p) metod3=true;
    if (metod1==false&&metod2==false&&metod3==false)
    {
        cout<<"при заданых условиях нет способов решить поставленую задачу\n";
        return;
    }
cout<<"способы, которыми пешеход может преодолеть "<<s<<" км. следующими способами:\n";
if (metod1==true) cout<<"- двигаясь бесплатно со скоростью "<<Speed[0]<<" км/час. время движения- "<<s/Speed[0]<<" ч.\n";
if (metod2==true) cout<<"-сделав одноразовую оплату в размере "<<Cost[1]<<" руб. двигаясь со скоростью "<<Speed[1]<<" км/час. время движения- "<<s/Speed[1]<<" ч.\n";
if (metod3==true)  cout<<"- оплачивая каждые 10 км по "<<Cost[2]<<" руб. и двигаясь со скоростью "<<Speed[2]<<" км/час. время движения- "<<s/Speed[2]<<" ч., стоимость поездки- "<<s*Cost[2]/10<<"\n";
}
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
28.05.2014, 15:58     Задачка с путешественником. "Основные операторы С++" #3
lawr, учитывая то, что автор даже основные операторы С++ ещё только начинает изучать, я бы не стал давать ему код с массивами...
grikukan
61 / 61 / 21
Регистрация: 23.09.2012
Сообщений: 212
28.05.2014, 16:15     Задачка с путешественником. "Основные операторы С++" #4
А можно пересаживаться с одного вида транспорта на другой во время поездки?

Если нет, то так

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include<iostream>
using namespace std;
long p,s,t;
int main()
{
    cin>>p>>s>>t;
    if(s/5<=t)
    {
        cout<<"1 sposob"<<endl;
        return 0;
    }
    if(s/40<=t && p>=14)
    {
        cout<<"2 sposob"<<endl;
        return 0;
    }
    if(s/80<=t && 10*s<=p)
    {
        cout<<"3 sposob"<<endl;
        return 0;
    }
    cout<<"Impossible"<<endl;
}
lawr
 Аватар для lawr
350 / 244 / 120
Регистрация: 09.05.2014
Сообщений: 738
28.05.2014, 16:25     Задачка с путешественником. "Основные операторы С++" #5
Сообщение было отмечено автором темы, экспертом или модератором как ответ
упрощаем
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
using namespace std;
void main()
{
    setlocale(LC_ALL, "Russian"); 
    int p, s, t;
    cout<<"введите сумму, которой располагает путешественник, руб.\n";
    cin>>p; 
    cout<<"расстояние, которое необходимо преодолеть, км\n";
    cout<<"время на преодоление расстояния\n";
    cin>>t;
    cout<<"пешеход может преодолеть "<<s<<" км. следующими способами:\n";
    if (s/5<=t) cout<<"- двигаясь бесплатно со скоростью 5 км/час. время движения- "<<s/5<<" ч.\n";
    if (s/40<=t&&14<=p) cout<<"-сделав одноразовую оплату в размере 14 руб. двигаясь со скоростью 40 км/час. время движения- "<<s/40<<" ч.\n";
    if (s/80]<=t&&s<=p)  cout<<"- оплачивая каждые 10 км по 10 руб. и двигаясь со скоростью 80 км/час. время движения- "<<s/80<<" ч., стоимость поездки- "<<s<<" руб.\n";
}
stalker161reg
0 / 0 / 0
Регистрация: 09.11.2013
Сообщений: 15
28.05.2014, 19:26  [ТС]     Задачка с путешественником. "Основные операторы С++" #6
Спасибо, ребятки) Как всегда спасаете =) Все по спасибке получили!
Yandex
Объявления
28.05.2014, 19:26     Задачка с путешественником. "Основные операторы С++"
Ответ Создать тему
Опции темы

Текущее время: 09:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru