Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.03.2018, 18:04   #1
Александр121
Форумчанин
 
Регистрация: 17.09.2017
Сообщений: 265
По умолчанию бинарные числа олимпиадная задача - C++

не понимаю в чём ошибка вроде все условия соблюдены.

есть чисел вида 2K, где K – некоторое неотрицательное целое число. Назовем такие числа бинарными. Это такие числа как 2, 4, 8, 16, 32 и т.д. Действительно, когда речь идет о размере памяти или о разрешении экрана монитора, то мы часто наталкиваемся на бинарные числа. Все это связано с принципом хранения информации в памяти ЭВМ.

Задано целое число N. Требуется определить, является ли оно бинарным.

Входной файл INPUT.TXT содержит единственное целое число N, не превосходящее 10000 по абсолютной величине.


Код:
#include <fstream> 
#include <iostream> 
using namespace std; 
int main() 
{ 
int a; 
cin » a; // считывание из фаила 
a=abs(a); 
if (a==2||a==4||a==8||a==16||a==32||a==64||a==128||a==256||a==512||a==1024||a==2048||a==4096||a==8192) 
 
cout «"YES"; 
else 
cout «"NO"; 
 
 
 
}
Александр121 вне форума Ответить с цитированием
Старый 11.03.2018, 18:04   #2
Александр121
Форумчанин
 
Регистрация: 17.09.2017
Сообщений: 265
По умолчанию

не проходит все тесты
Александр121 вне форума Ответить с цитированием
Старый 11.03.2018, 18:26   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Степени двойки что ли? Единица тоже степень двойки
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 11.03.2018, 18:31   #4
Александр121
Форумчанин
 
Регистрация: 17.09.2017
Сообщений: 265
По умолчанию

почему 1 тоже является бинарным? не понимаю вот этого?
Александр121 вне форума Ответить с цитированием
Старый 11.03.2018, 18:36   #5
alexzk
Форумчанин
 
Регистрация: 12.04.2017
Сообщений: 889
По умолчанию

Цитата:
Сообщение от Александр121 Посмотреть сообщение
почему 1 тоже является бинарным? не понимаю вот этого?
потому что 2 в 0 степени = 1
alexzk вне форума Ответить с цитированием
Старый 11.03.2018, 18:40   #6
Александр121
Форумчанин
 
Регистрация: 17.09.2017
Сообщений: 265
По умолчанию

не превосходящее 10000 по абсолютной величине. это значит все числа будут плюсовыми?
Александр121 вне форума Ответить с цитированием
Старый 11.03.2018, 19:11   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...

Последний раз редактировалось min@y™; 11.03.2018 в 19:13.
min@y™ вне форума Ответить с цитированием
Старый 11.03.2018, 19:26   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

i and (i-1) = 0
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 11.03.2018, 21:27   #9
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
i and (i-1) = 0
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 11.03.2018, 21:29   #10
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Это вариант без цикла определить, что число степень двойки
типа if i and (i-1) = 0 then степень
на плюсы переделать не вижу проблем
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Бинарные числа - C++ Александр121 Общие вопросы C/C++ 3 12.03.2018 01:03
Олимпиадная задача СергейАстрахань Помощь студентам 2 31.01.2013 11:48
Haskell Обыкновенные числа в бинарные kikat Помощь студентам 0 13.01.2011 18:45
Haskell Обыкновенные числа в бинарные kikat Помощь студентам 0 13.01.2011 02:12
Олимпиадная задача. _-Re@l-_ Паскаль, Turbo Pascal, PascalABC.NET 1 09.12.2010 20:53