Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.80/20: Рейтинг темы: голосов - 20, средняя оценка - 4.80
JaEvg
1 / 1 / 0
Регистрация: 23.09.2010
Сообщений: 31
1

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

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

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


"В бригаде, работающей на уборке сена, имеется N сенокосилок. Первая сенокосилка работала m часов, а каждая следующая на 10 минут больше, чем предыдущая. Сколько часов проработала вся бригада?"
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.09.2010, 13:35
Ответы с готовыми решениями:

Циклические алгоритмы.
Циклические алгоритмы. 1. Известны оценки по информатике каждого из 20...

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

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

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

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

27
Crudelis
Шаровик затейник
681 / 430 / 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
vet
175 / 176 / 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
Crudelis
Шаровик затейник
681 / 430 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
23.09.2010, 13:45 4
Цитата Сообщение от vet Посмотреть сообщение
А поему есль по условию читать то так:
тогда что то не так будет считаться) m это время, а не количество косилок)
0
vet
175 / 176 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
23.09.2010, 13:49 5
JaEvg, спасибо конечно =)
но мне можно было и без благодарности =), поторопился и условие не правильно понял
0
JaEvg
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
Crudelis
Шаровик затейник
681 / 430 / 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
vet
175 / 176 / 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
vet
175 / 176 / 55
Регистрация: 08.04.2009
Сообщений: 1,309
23.09.2010, 14:08 11
Злобный, спать пора мне =)
тупля началась =)
0
JaEvg
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
Crudelis
Шаровик затейник
681 / 430 / 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
JaEvg
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
Crudelis
Шаровик затейник
681 / 430 / 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
Dzhej-Dzhej
Заблокирован
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
JaEvg
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
Crudelis
Шаровик затейник
681 / 430 / 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
JaEvg
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
Crudelis
Шаровик затейник
681 / 430 / 78
Регистрация: 06.05.2010
Сообщений: 1,109
23.09.2010, 15:18 20
первая сенокосилка работает 60 минут, вторая работает на 10 минут больше первой если все сенокосилки начали работать одновременно, а их 2 то общее время будет равно 70 минут
0
23.09.2010, 15:18
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.09.2010, 15:18

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

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

Циклические алгоритмы
Дано число D (&gt; 0). Последовательность чисел AN определяется следую- щим...


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

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

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