1 / 1 / 0
Регистрация: 23.09.2010
Сообщений: 31
1

С++ (циклические алгоритмы)

23.09.2010, 13:35. Показов 7485. Ответов 27
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Большая просьба помочь с кодом по задаче. Проста, но разбираться в этой теме времени не хватает, а результат срочно нужен.


"В бригаде, работающей на уборке сена, имеется N сенокосилок. Первая сенокосилка работала m часов, а каждая следующая на 10 минут больше, чем предыдущая. Сколько часов проработала вся бригада?"
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.09.2010, 13:35
Ответы с готовыми решениями:

Циклические алгоритмы
Ребята,надо на Borland C++ 5.02 сделать,вот задание:Дано натуральне число n. Обчислити...

Циклические алгоритмы
Дано число D (> 0). Последовательность чисел AN определяется следую- щим образом: A1 = 2, AN = 2 +...

Циклические алгоритмы
Здраствуйте, необходимо решить такую задачу:): Известны сведения о количестве осадков,...

Циклические алгоритмы
Вводится последовательность из N целых чисел (число N вводится пользователем перед вводом...

27
Шаровик затейник
696 / 445 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
23.09.2010, 13:41 2
C++
1
2
3
4
summ=m;
for(int i=0;i<n;i++){
summ+=10;
}
1
182 / 183 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
23.09.2010, 13:44 3
А поему если по условию читать то так:

C++
1
2
3
for(int i=m*60;i<n;i++){
summ+=10;
}

Не по теме:

А может и нет =)
Нуда нет, конечно от 0 нада 1-ю то тож учитываем :-[

1
Шаровик затейник
696 / 445 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
23.09.2010, 13:45 4
Цитата Сообщение от vet Посмотреть сообщение
А поему есль по условию читать то так:
тогда что то не так будет считаться) m это время, а не количество косилок)
0
182 / 183 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
23.09.2010, 13:49 5
JaEvg, спасибо конечно =)
но мне можно было и без благодарности =), поторопился и условие не правильно понял
0
1 / 1 / 0
Регистрация: 23.09.2010
Сообщений: 31
23.09.2010, 13:51  [ТС] 6
Что-то не то я сделал вот код, результат неверный выдаёт программа
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
#include <windows.h>
#include <iostream>
#include <stdio.h>  
#include <conio.h>
using namespace std;
char bufRus [256];
char* Rus(char* mes)
 { AnsiToOem (mes, bufRus);
    return bufRus;
 }
int main()
{ 
int n; //число сенокосилок
int m; //проработала первая сенокосилка
int summ; //общее время работы
cout << Rus("\nВведите количество сенокосилок: ");
  cin >> n;
  cout << Rus("\nВведите время работы первой сенокосилки: ");
  cin >> m;
summ=m;
for(int i=0;i<n;i++){
summ+=10;
}
cout << Rus("\nОбщее время работы: ");
cout << summ;
getch(); return 0;
}
0
Шаровик затейник
696 / 445 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
23.09.2010, 14:00 7
JaEvg, summ=m-10;
0
2 / 2 / 0
Регистрация: 18.09.2010
Сообщений: 43
23.09.2010, 14:03 8
Убрал русский, написал транслитом - всё прекрасно показываетО_о это у тебя где-то глюк какой-то

Добавлено через 1 минуту
время работы первой задается в часах или в минутах?
0
182 / 183 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
23.09.2010, 14:07 9
Злобный, по условию в часах
C++
1
summ=m*60;
Добавлено через 1 минуту
у меня другой вопрос: Косилки начали работать одновременно и затем каждая работала на 10 минут дольше предыдущей, так или нет?

Добавлено через 1 минуту
Если да:
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
#include <windows.h>
#include <iostream>
#include <stdio.h>  
#include <conio.h>
using namespace std;
char bufRus [256];
char* Rus(char* mes)
 { AnsiToOem (mes, bufRus);
        return bufRus;
 }
int main()
{ 
int n; //÷èñëî ñåíîêîñèëîê
int m; //ïðîðàáîòàëà ïåðâàÿ ñåíîêîñèëêà
int summ; //îáùåå âðåìÿ ðàáîòû
cout << Rus("\nÂâåäèòå êîëè÷åñòâî ñåíîêîñèëîê: ");
  cin >> n;
  cout << Rus("\nÂâåäèòå âðåìÿ ðàáîòû ïåðâîé ñåíîêîñèëêè: ");
  cin >> m;
summ=m*60;
for(int i=1;i<n;i++){
summ+=10;
}
cout << Rus("\nÎáùåå âðåìÿ ðàáîòû: ");
cout << summ;
getch(); return 0;
}
0
2 / 2 / 0
Регистрация: 18.09.2010
Сообщений: 43
23.09.2010, 14:07 10
Цитата Сообщение от vet Посмотреть сообщение
Злобный, по условию в часах
C++
1
summ=m*60;
Добавлено через 1 минуту
у меня другой вопрос: Косилки начали работать одновременно и затем каждая работала на 10 минут дольше предыдущей, так или нет?
А какая разница, если время указывается ОБЩЕЕ?
1
182 / 183 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
23.09.2010, 14:08 11
Злобный, спать пора мне =)
тупля началась =)
0
1 / 1 / 0
Регистрация: 23.09.2010
Сообщений: 31
23.09.2010, 14:37  [ТС] 12
Цитата Сообщение от vet Посмотреть сообщение
Злобный, по условию в часах
C++
1
summ=m*60;
Добавлено через 1 минуту
у меня другой вопрос: Косилки начали работать одновременно и затем каждая работала на 10 минут дольше предыдущей, так или нет?

Добавлено через 1 минуту
Если да:
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
#include <windows.h>
#include <iostream>
#include <stdio.h>  
#include <conio.h>
using namespace std;
char bufRus [256];
char* Rus(char* mes)
 { AnsiToOem (mes, bufRus);
        return bufRus;
 }
int main()
{ 
int n; //÷èñëî ñåíîêîñèëîê
int m; //ïðîðàáîòàëà ïåðâàÿ ñåíîêîñèëêà
int summ; //îáùåå âðåìÿ ðàáîòû
cout << Rus("\nÂâåäèòå êîëè÷åñòâî ñåíîêîñèëîê: ");
  cin >> n;
  cout << Rus("\nÂâåäèòå âðåìÿ ðàáîòû ïåðâîé ñåíîêîñèëêè: ");
  cin >> m;
summ=m*60;
for(int i=1;i<n;i++){
summ+=10;
}
cout << Rus("\nÎáùåå âðåìÿ ðàáîòû: ");
cout << summ;
getch(); return 0;
}
Скорей всего здесь они работали не одновременно, а друг за другом.

Добавлено через 23 минуты
Вопрос так и остался не разрешён, в ответе результат не верен
0
Шаровик затейник
696 / 445 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
23.09.2010, 14:47 13
Добавлено через 3 минуты
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
#include <windows.h>
#include <iostream>
#include <stdio.h>  
#include <conio.h>
using namespace std;
char bufRus [256];
char* Rus(char* mes)
 { AnsiToOem (mes, bufRus);
        return bufRus;
 }
int main()
{ 
int n; //число сенокосилок
int m; //проработала первая сенокосилка
int summ; //общее время работы
cout << Rus("\nВведите количество сенокосилок: ");
  cin >> n;
  cout << Rus("\nВведите время работы первой сенокосилки: ");
  cin >> m;
summ=m;
for(int i=1;i<n;i++){
summ+=10;
}
cout << Rus("\nОбщее время работы: ");
cout << summ;
getch(); return 0;
}
Результат работы:
2 машины, работа первой 40 минут, результат 50
6 машин, работа первой 10 минут, результат 70
0
1 / 1 / 0
Регистрация: 23.09.2010
Сообщений: 31
23.09.2010, 14:50  [ТС] 14
Цитата Сообщение от Crudelis Посмотреть сообщение
summ=m-10; я ж писал, в цикле ко всем прибавляется 10, но к первой прибавлять не нужно.
А в каком месте нужно ставить "m-10"?

Добавлено через 2 минуты
Цитата Сообщение от Crudelis Посмотреть сообщение
Добавлено через 3 минуты
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
#include <windows.h>
#include <iostream>
#include <stdio.h>  
#include <conio.h>
using namespace std;
char bufRus [256];
char* Rus(char* mes)
 { AnsiToOem (mes, bufRus);
        return bufRus;
 }
int main()
{ 
int n; //число сенокосилок
int m; //проработала первая сенокосилка
int summ; //общее время работы
cout << Rus("\nВведите количество сенокосилок: ");
  cin >> n;
  cout << Rus("\nВведите время работы первой сенокосилки: ");
  cin >> m;
summ=m;
for(int i=1;i<n;i++){
summ+=10;
}
cout << Rus("\nОбщее время работы: ");
cout << summ;
getch(); return 0;
}
Результат работы:
2 машины, работа первой 40 минут, результат 50
6 машин, работа первой 10 минут, результат 70
Вот только "10" это минуты, а "m"время в часах, и в результате нужно выводить в часах
0
Шаровик затейник
696 / 445 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
23.09.2010, 14:55 15
проблема перевести минуты в часы?

Добавлено через 2 минуты

C++
1
2
3
4
5
6
7
8
9
int hour=0;
while(summ>60){
hour+=1;
summ-=60;
}
cout << Rus("\nОбщее время работы: ");
if(hour)
cout << Rus("часов: ")<<hour;
cout<<Rus("минут: ")<<summ;
0
Заблокирован
23.09.2010, 15:01 16
почему-бы не написать:
summ=(m*60+(N-1)*10)/60
или
C++
1
2
3
summ=(m*60+(N-1)*10)
hour=summ/60
minut=summ%60
или, может быть, вопрос в том, сколько человеко-часов работала бригада
0
1 / 1 / 0
Регистрация: 23.09.2010
Сообщений: 31
23.09.2010, 15:05  [ТС] 17
Цитата Сообщение от Crudelis Посмотреть сообщение
проблема перевести минуты в часы?

Добавлено через 2 минуты

C++
1
2
3
4
5
6
7
8
9
int hour=0;
while(summ>60){
hour+=1;
summ-=60;
}
cout << Rus("\nОбщее время работы: ");
if(hour)
cout << Rus("часов: ")<<hour;
cout<<Rus("минут: ")<<summ;
При данных n=2, m=60 в ответе 1ч 20 мин, хотя должно быть 2:10
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
#include <windows.h>
#include <iostream>
#include <stdio.h>  
#include <conio.h>
using namespace std;
char bufRus [256];
char* Rus(char* mes)
 { AnsiToOem (mes, bufRus);
        return bufRus;
 }
int main()
{ 
int n; //число сенокосилок
int m; //проработала первая сенокосилка
int summ; //общее время работы
cout << Rus("\nВведите количество сенокосилок: ");
  cin >> n;
  cout << Rus("\nВведите время работы первой сенокосилки: ");
  cin >> m;
summ=m;
for(int i=0;i<n;i++){
summ+=10;
}
int hour=0;
while(summ>60){
hour+=1;
summ-=60;
}
cout << Rus("\nОбщее время работы: ");
if(hour)
cout << Rus("часов: ")<<hour;
cout<<Rus("минут: ")<<summ;
getch(); return 0;
}
0
Шаровик затейник
696 / 445 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
23.09.2010, 15:13 18
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
#include <windows.h>
#include <iostream>
#include <stdio.h>  
#include <conio.h>
using namespace std;
char bufRus [256];
char* Rus(char* mes)
 { AnsiToOem (mes, bufRus);
        return bufRus;
 }
int main()
{ 
int n; //число сенокосилок
int m; //проработала первая сенокосилка
int summ; //общее время работы
cout << Rus("\nВведите количество сенокосилок: ");
  cin >> n;
  cout << Rus("\nВведите время работы первой сенокосилки: ");
  cin >> m;
summ=m;
for(int i=1;i<n;i++){
summ+=10;
}
int hour=0;
while(summ>60){
hour+=1;
summ-=60;
}
cout << Rus("\nОбщее время работы: ");
if(hour)
cout << Rus("часов: ")<<hour<<" ";
cout<<Rus("минут: ")<<summ;
getch(); return 0;
}
При данных n=2, m=60 в ответе часов 1 минут 10
70 минут это и будет 1 час 10 минут
0
1 / 1 / 0
Регистрация: 23.09.2010
Сообщений: 31
23.09.2010, 15:14  [ТС] 19
Цитата Сообщение от Crudelis Посмотреть сообщение
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
#include <windows.h>
#include <iostream>
#include <stdio.h>  
#include <conio.h>
using namespace std;
char bufRus [256];
char* Rus(char* mes)
 { AnsiToOem (mes, bufRus);
        return bufRus;
 }
int main()
{ 
int n; //число сенокосилок
int m; //проработала первая сенокосилка
int summ; //общее время работы
cout << Rus("\nВведите количество сенокосилок: ");
  cin >> n;
  cout << Rus("\nВведите время работы первой сенокосилки: ");
  cin >> m;
summ=m;
for(int i=1;i<n;i++){
summ+=10;
}
int hour=0;
while(summ>60){
hour+=1;
summ-=60;
}
cout << Rus("\nОбщее время работы: ");
if(hour)
cout << Rus("часов: ")<<hour<<" ";
cout<<Rus("минут: ")<<summ;
getch(); return 0;
}
При данных n=2, m=60 в ответе часов 1 минут 10
70 минут это и будет 1 час 10 минут
Но нужно ещё суммировать с работой первой сенокосилки.
0
Шаровик затейник
696 / 445 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
23.09.2010, 15:18 20
первая сенокосилка работает 60 минут, вторая работает на 10 минут больше первой если все сенокосилки начали работать одновременно, а их 2 то общее время будет равно 70 минут
0
23.09.2010, 15:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.09.2010, 15:18
Помогаю со студенческими работами здесь

Циклические алгоритмы
Help!!! Задача предполагает применение оператора цикла while языка программирования С++. 1. Найти...

Циклические алгоритмы
Как реализовать данную функцию для каждого x, изменяющегося от a до b с шагом h. Значения a, b, h и...

Циклические алгоритмы
Здравствуйте :) У меня вопросы по двум задачам, я знаю как начинать, но не знаю как завершить :(...

Циклические Алгоритмы
Написать программу для вычисления значения функции y=cos(x), если значения аргумента x меняются в...


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

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

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