Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 01.12.2015
Сообщений: 4
1

Является ли число степенью десятки

08.10.2017, 14:55. Показов 2399. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дано целочисленное число. Проверить является ли оно степенью десяти.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.10.2017, 14:55
Ответы с готовыми решениями:

В целочисленном массиве найти и напечатать те элементы, которые являются степенью 2. Написать функцию, проверяющую, является ли число степенью 2.
В целочисленном массиве найти и напечатать те элементы, которые являются степенью 2. Написать...

Определите, является ли число степенью числа 2, и если является, то выведите значение этой степени
Дано натуральное число n. Определите, является ли оно степенью числа 2, и если является, то...

Дано натуральное число n. Определите, является ли оно степенью числа 2, и если является, то выведите значение этой степени
Дано натуральное число n. Определите, является ли оно степенью числа 2, и если является, то...

Является ли число степенью двойки
Дано натуральное число n. Определите, является ли оно степенью числа 2, и выведете слово YES если...

6
58 / 16 / 26
Регистрация: 07.02.2015
Сообщений: 346
08.10.2017, 15:29 2
Drews,

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <cstdlib>
#include <math.h>
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL,"Russian");
    int numerk;// число
    double answ,chk;//для промежуточных значений
    cout <<"Введите число для проверки степени десятки"<< endl;
    cin>>numerk;
    answ = log10(numerk) / log10(10);
    if (modf(answ, &chk) == 0)
        cout << "Является" << endl;     
    else cout << "Не является" << endl;
    system("pause");
    return 0;
}
0
69 / 68 / 52
Регистрация: 28.10.2015
Сообщений: 388
08.10.2017, 15:30 3
C++
1
2
3
4
5
bool f(int a)
{
    double n = log10(a);
    return  (n == (long long)n) ? 1 : 0;
}
0
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
08.10.2017, 16:46 4
Цитата Сообщение от MisterR Посмотреть сообщение
bool f(int a)
{
double n = log10(a);
return (n == (long long)n) ? 1 : 0;
}
Красиво.


А почему нельзя обходным путём?
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
#include <string>
#include<iostream>
using namespace std;
int main(){
    setlocale(0, "");
    string s, sn="";
    cout << "Введите число ";
    cin >> s;
    
    if (s[0] == '0')
    {
        sn = " не";
    }
    else
    {
        for (int i = 1; i < s.length(); i++)
        {
            if (s[i] != '0')
            {
                sn = " не";
                break;
            }
        }
    }           
cout << "Данное число" << sn << " является степенью десятки" << endl;
system("pause");
return 0;
}
И никаких ограничений на длину вводимого числа ))
0
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
09.10.2017, 11:24 5
std::to_string +
C++
1
2
3
4
5
6
bool Check(const std::string &s)
{
    if (s.size() == 1)
        return s == "1";
    return std::all_of(s.cbegin(), s.cend(), [](const char c) { return c == '0'; });
}
0
155 / 137 / 46
Регистрация: 15.02.2010
Сообщений: 750
09.10.2017, 16:07 6
Цитата Сообщение от MrGluck Посмотреть сообщение
C++
1
2
3
4
5
6
bool Check(const std::string &s)
{
   if (s.size() == 1)
     return s == "1";
    return std::all_of(s.cbegin(), s.cend(), [](const char c) { return c == '0'; });
}
Я понимаю, что для Вас Visual Studio 2010 устарел, но всё же...
Миниатюры
Является ли число степенью десятки  
0
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
09.10.2017, 17:39 7
Цитата Сообщение от LVV Посмотреть сообщение
но всё же
Цитата Сообщение от LVV Посмотреть сообщение
Visual Studio 2010 устарел
Уже 3 стандарта вышло, в которых эта функция появилась. Обучать новичков писать код под старьё не вижу смысла. Итак хватает Борланда в некоторых ВУЗ-ах (здравствуй DOS).
0
09.10.2017, 17:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.10.2017, 17:39
Помогаю со студенческими работами здесь

Проверить, является ли число степенью 3
Данное целое число N ( &gt; 0). Если оно есть степенно числа 3 , то вывести TRUE, если не является -...

Является ли число степенью двойки?
Вводится число. Напечатать YES, если оно является степенью двойки, NO - иначе.

Является ли число степенью двойки
Условие: Входные данные Входной файл INPUT.TXT содержит единственное целое число N, не...

Определить является ли число k степенью 3
Определить является ли число k степенью 3. Помогите решить...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru