Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.88/50: Рейтинг темы: голосов - 50, средняя оценка - 4.88
10 / 10 / 5
Регистрация: 28.09.2015
Сообщений: 139
1

Задача с использованием логических операторов и операторов ветвления

27.09.2016, 23:13. Показов 10012. Ответов 4
Метки нет (Все метки)

Вот вам задачка, чтоб голову поломать

Вася работает программистом и получает 50$ за каждые 100 строк кода. За каждое третье опоздание Васю штрафуют на 20$. Реализовать меню:
- пользователь вводит желаемый доход Васи и количество опозданий. Посчитать, сколько строк кода ему надо написать
- пользователь вводит количество строк кода, написанное Васей и желаемый объем зарплаты. Посчитать, сколько раз Вася может опоздать
- пользователь вводит количество строк кода и количество опозданий. Определить, сколько денег заплатят Васе и заплатят ли вообще.


Я её решил, просто интересно насколько проще можно сделать решение
Решать только с использованием логических операторов, if-else, как бы вам ни хотелось использовать функции
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.09.2016, 23:13
Ответы с готовыми решениями:

Вычислительные программы с использованием операторов ветвления
помогите оочень нада Тема: Вычислительные программы с использованием операторов ветвления....

Задача с использованием операторов цикла на с++
Ребят, помогите "решите задачу тремя способами, используя операторы цикла do while и for. Вывести...

Разработка программ с использованием операторов ветвления и циклов
Ветвление. Составить программу для определения значения функции. Предусмотреть вывод сообщения о...

Разработка программ с использованием операторов ветвления и цикла
1) Написать программу, которая вычисляет значение функции у: 2)Дана точка на плоскости с...

4
Объявлятель переменных
1003 / 317 / 292
Регистрация: 24.09.2011
Сообщений: 1,091
27.09.2016, 23:27 2
Лучший ответ Сообщение было отмечено Glitch как решение

Решение

Задача примитивная, но условие требует уточнения. Оплата кратна $50? Или можно написать 2 строки и получить доллар?
C++
1
2
3
4
5
6
7
8
//1 пункт. Остальное лень.
#include <iostream>
 
int main() {
    unsigned salary=500, lateness=10;
    unsigned stringsNeeded = (salary + (lateness/3)*20)/50 + ((salary + (lateness/3)*20)%50!=0);
    std::cout << stringsNeeded*100;
}
0
10 / 10 / 5
Регистрация: 28.09.2015
Сообщений: 139
28.09.2016, 16:46  [ТС] 3
SpBerkut, такое задание дали, ничего не поделать
Я сделал оплату кратной 50, так же как и штраф 20
желательно если уже пишете, то допишите прогу до конца

Добавлено через 17 часов 14 минут
Задача все еще в силе...
0
0 / 0 / 0
Регистрация: 20.07.2019
Сообщений: 1
20.07.2019, 00:57 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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include<iostream>
using namespace std;
int main(){
    setlocale(0, "");
    int x, b, d, z,x2,x3;
    cout << "\t\tвиберiть та введiть номер варiанту\n";
    cout << "#1 введiть бажаний дохiд Васi та кiлькiсть запiзнень,порахувати, скiльки рядкiв коду йому треба написати\n";
    cout << "#2 користувач вводить кiлькiсть рядкiв коду, написане Васею i бажаний обсяг зарплати.Порахувати, скiльки разiв Вася може запiзнитися\n";
    cout << "#3 користувач вводить кiлькiсть рядкiв коду i кiлькiсть запiзнень, визначити, скiльки грошей заплатять Васi i чи заплатять взагалі.\n";
    cin >> b;
    if (b < 1 || b>3)  cout << "невiрний ввiд\n";
    else  if (b == 1){
        cout << "ведiть Бажаний дохiд Васi\n";
    cin >> d;
    cout << "введiть кiлькiсть запiзнень\n";
    cin >> z;
    cout << (d / 50 * 100) + (z / 3 * 20);
}
    else 
        if (b == 2){
    cout << "введiть кiлькiсть рядкiв коду\n";
    cin >> x;
    cout << "ведiть бажаний дохiд Васi\n";
    cin >> d;
    if (x / 2 <= d)cout << "не можна пропускать\n";
    else 
        cout << (x / 2 - d) / 20<< "раз можна пропустити\n";
    }
        else
            if (b == 3) {
                cout << "введiть кiлькiсть рядкiв коду\n";
                cin >> x;
                cout << "введiть кiлькiсть запiзнень\n";
                cin >> z;
                x2 = ((x / 2)-(z / 3 * 20));
                x3 = x2 / 20;
                if (x3 >0)cout << x2<<" $ ЗП Васi в цьому мiсяцi\n";
                else cout << "не заплатять\n";
            }
 
    
 
    system("pause");
}
0
0 / 0 / 0
Регистрация: 18.11.2020
Сообщений: 3
30.11.2020, 10:28 5
using namespace std;

int main()
{
setlocale(0, "ru");
int a, b, d, z, c1;
cout << "выеберете номер "<<endl;
cout << "#1 введите желаемый доход Васи и количество опозданий, посчитать, "<<
" сколько строк кода емунадо написать"<<endl;
cout << "#2 введите количество строк кода, написанное Васей и желаемый объем зарплаты." <<
"Посчитать, сколько раз Вася может опоздать; " <<endl;

cout << "#3 введите количество строк кода и количество опозданий, определить,"<<
"сколько денег заплатят Васе и заплатят ли вообще."<<endl;
cin >> b;
if (b < 1 || b>3) cout << "не верно"<<endl;
else if (b == 1) {
cout << "ведите желаемый доход Васи"<<endl;
cin >> d;
cout << "введите количество опозданий"<<endl;
cin >> z;
cout <<"вот столько бедолаге васе надо настрочить строк"<<endl<< (d*2)-(z*20);
}
else
if (b == 2) {
cout << "введите количество строк кода\n";
cin >> a;
cout << "ведите желаемый доход Васи\n";
cin >> d;
if (a / 2 <= d)cout << "нельзя пропускать\n";
else
cout << (a / 2 - d) / 20 << "раз можно пропустить\n";
}
else
if (b == 3) {
cout << "введите количество строк кода\n";
cin >> a;
cout << "введите количество опозданий\n";
cin >> z;
c1 = ((a ) - (z * 20));

if (c1 > 0)cout << c1 << " зарплата Васи в $ в этом месяце\n";
else cout << "не заплатять\n";
}

}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.11.2020, 10:28

Вычисление значения функции с использованием операторов ветвления if
Я только учусь, помогите пожалуйста... третий день не могу построить этот график... спасибо всем...

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

Решить с использованием логических операторов
Помогите пожалуйста с системой функций. Не могу найти даже решение похожих задач.

Написать файл функцию с использованием операторов ветвления и циклов
Входной массив: A(индекс 3x3); Формируемый массив: B( индекс 3x3), b(индекс ij)={a(индекс ij),...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.