Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 
Вернуться
Тема: А как в с++ влияет вывод переменной? Вот была задача "Поля" и в ней выдавало ошибку только из-за того,что я выводил корень не как целочисленную переменную,а как просто действие: // Accepted #include <iostream> #include <cmath> using namespace std; int main(){ long long a,b; cin >> a >> b; long double d=sqrt(a*b); long long c=(sqrt(a*b)); if(c==d) cout << c; else cout << 0; } // wrong answer #include <iostream> #include <cmath> using namespace std; int main(){ long long a,b; cin >> a >> b; long double d=sqrt(a*b); long long c=(sqrt(a*b)); if(c==d) cout << sqrt(a*b); else cout << 0; }
1
  1  Хомбак Максим, 29 июня 2018 г. 20:13:32
      Ок,спасибо
  2  Тер-Саркисов Богдан Олегович, 29 июня 2018 г. 20:01:03
      Потестируй на больших значениях. Вещественное число выводится в экспоненциальном виде. Например, при a = 100000, b = 1000000000 выведет 1e+07.
  3  Хомбак Максим, 29 июня 2018 г. 16:26:12
      // wrong answer
#include <iostream>
#include <cmath>
using namespace std;
int main(){
long long a,b;
cin >> a >> b;
long double d=sqrt(a*b);
long long c=(sqrt(a*b));
if(c==d) cout << sqrt(a*b);
else cout << 0; }
  4  Хомбак Максим, 29 июня 2018 г. 16:25:41
      // Accepted
#include <iostream>
#include <cmath>
using namespace std;
int main(){
long long a,b;
cin >> a >> b;
long double d=sqrt(a*b);
long long c=(sqrt(a*b));
if(c==d) cout << c;
else cout << 0; }
1

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2026, ИНН 246305493507, E-mail: admin@acmp.ru