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

Неверная обработка данных при вводе двух и более величин - C++

Восстановить пароль Регистрация
 
cFresto
0 / 0 / 0
Регистрация: 16.07.2014
Сообщений: 4
16.07.2014, 17:11     Неверная обработка данных при вводе двух и более величин #1
У меня по коду все правильно, при вводе одного значения n вывод верный. Если ввод включает 2 и больше значений n, то первое значение, остальные такое чувство, что не проверяет программа.
Вот код:
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
#include <iostream>
#include <vector>
#include <cmath>
 
using namespace std;
 
int main()
{
   int t;
   int d=1;
   int z=0;
   cin>>t;
   vector<int> n(t);
   for(int i=0;i<t;i++){
    cin>>n[i];
   }
   for(int i=0;i<t;i++){
       z=0;
        while(n[i]/d>1){
            if(n[i]>5){
            d=d*5;
        z=z+n[i]/d;
            }
            else{
                cout<<0;
                break;
            }
        }
    cout<<z<<endl;
    }
   return 0;
}
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
vikichocolated
4 / 4 / 0
Регистрация: 14.04.2014
Сообщений: 60
16.07.2014, 17:19     Неверная обработка данных при вводе двух и более величин #2
а можете, пожалуйста, более точно сформулировать проблему?
cFresto
0 / 0 / 0
Регистрация: 16.07.2014
Сообщений: 4
16.07.2014, 17:22  [ТС]     Неверная обработка данных при вводе двух и более величин #3
Допустим ввожу n=60
вывод 14. Все верно.
А если введу n=60;100, то при выводе выглядит так:14 0
Ilot
Модератор
Эксперт С++
1767 / 1142 / 223
Регистрация: 16.05.2013
Сообщений: 3,020
Записей в блоге: 5
Завершенные тесты: 1
16.07.2014, 17:25     Неверная обработка данных при вводе двух и более величин #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Должно быть вы просто забыли возвратить переменную d к изначальной величине?
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
#include <iostream>
#include <vector>
#include <cmath>
 
using namespace std;
 
int main()
{
   int t;
   int d=1;
   int z=0;
   cin>>t;
   vector<int> n(t);
   for(int i=0;i<t;i++){
    cin>>n[i];
   }
   for(int i=0;i<t;i++){
       z=0;
       d = 1;
        while(n[i]/d>1){
            if(n[i]>5){
                d=d*5;
                z=z+n[i]/d;
            }
            else{
                cout<<0;
                break;
            }
        }
    cout<<z<<endl;
    }
   return 0;
}
Yandex
Объявления
16.07.2014, 17:25     Неверная обработка данных при вводе двух и более величин
Ответ Создать тему
Опции темы

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