|
|
back to boardShow all messages Hide all messages#include <iostream>; #include <vector>; using namespace std; int main() { vector<int> v; int n; while (std::cin >> n) v.push_back(n); int i; for(i = v.size() - 1; i>=0; i--) printf("%.4f\n", sqrt((double) (v[i]))); system("pause"); return 0; } P.S. А тесты на которых проверяются программы можно увидеть? Hey dude, did you read FAQ? Why did you decide to include system("pause") in your code? Do you think it will help testing system to check your code??? I delete it when I check, but forget to delete, when copy it here Edited by author 16.06.2013 16:22 Edited by author 16.06.2013 16:22 Edited by author 16.06.2013 16:22 Ты вроде Сергей, почему по русски не ответил? Edited by author 16.06.2013 16:23 У меня тоже самое: в консоли числа совпадают с ответом для первого теста, а в результатах проверки Wrong answer У меня сейчас немного изменилось положение, я понял, что не совсем понимаю, как должен заканчиваться поток данных. Я например его завершаю нажатием ctrl+z, понятия не имею откуда я это знаю, видно некоторые знания в университете попадают в голову в не зависимости от моего желания) Так вот, я обычно тестил и завершал этим, а сейчас ввожу первую строку ,потом вторую допустим 4444444444 4444444444444 и поток завершается сам собой, причем ответ только для одного числа, т.е. ошибку вроде нашел, но как с ней бороться не знаю. Use files to test your program locally I used files for testing and got an error in the first test. My answer is the same as in example. Also I used in my testing text from example. Вот мой код. Замени int на double в векторе и n #include <stdio.h> #include <conio.h> #include <algorithm> #include <iostream> #include <iomanip> #include <math.h> #include <vector> #include <set> #include <map> #include <queue> #include <deque> #include <string> using namespace std; int gcd (int a, int b){ return (b)? gcd(b,a % b) : a; } int lca (int a, int b){ return a / gcd(a,b) * b; } int main() { vector <long double> a; long double n = 5.0; while(cin >> n) a.push_back(n); for(int i = a.size() - 1;i >= 0; --i) cout << fixed << setprecision(4) << pow(double(a[i]), 0.5) << endl; return 0; } Первый тест - это ввод исходных данных из примера и ожидание вывода результата примера. А число 876652098643267843 уже больше значений типа int. Поэтому первый тест ломается уже на сканировании этого числа в переменную n. 876652098643267843 влазит в тип long long int |
|
|