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

Определить функцию, позволяющую распознаёт степени пятерки - C++

Восстановить пароль Регистрация
 
aleksandra69
0 / 0 / 0
Регистрация: 01.11.2013
Сообщений: 17
08.11.2013, 15:35     Определить функцию, позволяющую распознаёт степени пятерки #1
Даны натурального число n и целые числа A1,A2,A3...An. Найти количество чисел Ai(i=1,2,3,...,n), являющихся степенями пятерки.( Определить функцию, позволяющую распознаёт степени пятерки.)

спасибо за ранее
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.11.2013, 15:35     Определить функцию, позволяющую распознаёт степени пятерки
Посмотрите здесь:

C++ 10. Разработать функцию, позволяющую поменять местами две произвольные строки двухмерного массива
C++ Разработать функцию, позволяющую поменять местами две произвольные строки двухмерного массива
Дано натуральное k. Определить k-ю цифру последовательности, в которой выписаны подряд степени пятерки C++
C++ Определить процедуру, позволяющую распознавать полные квадраты
Определить функцию, позволяющую распознавать наличие вещественных корней в квадратном уравнении C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
reckless91
30 / 30 / 1
Регистрация: 01.11.2013
Сообщений: 63
08.11.2013, 17:09     Определить функцию, позволяющую распознаёт степени пятерки #2
Цитата Сообщение от aleksandra69 Посмотреть сообщение
Даны натурального число n и целые числа A1,A2,A3...An. Найти количество чисел Ai(i=1,2,3,...,n), являющихся степенями пятерки.( Определить функцию, позволяющую распознаёт степени пятерки.)

спасибо за ранее
Ничего сложного.
Определяете счетчик, например:
C++
1
int count = 0;
И в цикле перебираете все целые числа A1,A2,A3...An, хранящиеся в массиве A:
C++
1
2
3
4
5
for(int i = 0; i < n; i++)
{
    if(A[i] % 5 == 0) //остаток от деления на 5
       count++;
}
P.S. Это конечно не мое дело, но с русским языком у Вас... эээ... проблемы)))
scenotaph
120 / 120 / 15
Регистрация: 29.03.2013
Сообщений: 237
08.11.2013, 17:12     Определить функцию, позволяющую распознаёт степени пятерки #3
reckless91, У вас 10,15,20 тоже будут степенями пятёрки?
jurok_85
226 / 209 / 70
Регистрация: 21.02.2013
Сообщений: 494
08.11.2013, 17:12     Определить функцию, позволяющую распознаёт степени пятерки #4
C++
1
2
3
4
5
6
7
8
9
bool stepen(int x)
{
    int n = 100;
    for(int i=0; i != n; i++)
        if(pow(x, 1.0/i)== 5)
        return true;
 
        return false;
}
reckless91
30 / 30 / 1
Регистрация: 01.11.2013
Сообщений: 63
08.11.2013, 17:17     Определить функцию, позволяющую распознаёт степени пятерки #5
Цитата Сообщение от scenotaph Посмотреть сообщение
reckless91, У вас 10,15,20 тоже будут степенями пятёрки?
Согласен, не вчитался в задание что-то)))
NinjaStar
46 / 48 / 2
Регистрация: 16.08.2013
Сообщений: 258
08.11.2013, 17:17     Определить функцию, позволяющую распознаёт степени пятерки #6
там и конструкции switch хватит
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
08.11.2013, 17:20     Определить функцию, позволяющую распознаёт степени пятерки #7
как вариант:
C++
1
2
3
4
5
6
7
8
bool is_integral_power_of_5(double const value) {
   static double const eps  = 1e-9;
   static double const log5 = std::log(5.);
 
   assert(value > 0.);
 
   return std::fmod(std::log(value), log5) < eps;
}
jurok_85
226 / 209 / 70
Регистрация: 21.02.2013
Сообщений: 494
08.11.2013, 17:34     Определить функцию, позволяющую распознаёт степени пятерки #8
хорошо, давайте дальше разовьем темку.
вот решение(может немного не по условию)
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
#include <iostream>
#include <math.h>
using namespace std;
bool stepen(int x)
{
    int n = 100;
    for(int i=0; i != n; i++)
        if(pow(x, 1.0/i)== 5)
        return true;
 
        return false;
}
int main()
{
    const int N= 10000;
    int arr[N];
 
    for(int i = 0; i != N; i++)
    arr[i] = i;
 
    for(int i = 0; i != N; i++)
    if(stepen(arr[i]))
    cout << arr[i] << " ";
 
 
}
но все-таки хотелось бы узнать почему программа выводит результаты :
5, 25, 625. а 125 не выводит хотя ясно что 5 в третьей степени 125?
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
08.11.2013, 17:43     Определить функцию, позволяющую распознаёт степени пятерки #9
Цитата Сообщение от jurok_85 Посмотреть сообщение
но все-таки хотелось бы узнать почему программа выводит результаты :
5, 25, 625. а 125 не выводит хотя ясно что 5 в третьей степени 125?
Цитата Сообщение от jurok_85 Посмотреть сообщение
if(pow(x, 1.0/i)== 5)
тут будет погрешность из за типа double, что то вроде 4.9999... или 5.00...1
jurok_85
226 / 209 / 70
Регистрация: 21.02.2013
Сообщений: 494
08.11.2013, 17:51     Определить функцию, позволяющую распознаёт степени пятерки #10
тогда как это можно решить?
scenotaph
120 / 120 / 15
Регистрация: 29.03.2013
Сообщений: 237
08.11.2013, 18:25     Определить функцию, позволяющую распознаёт степени пятерки #11
C++
1
2
3
4
5
6
7
8
bool is_stepen_5(const int value) {
   for (int i = 0; (int)pow(5.0,i) <= value; i++) {
       if (value == (int)pow(5.0,i)) {
           return true;
       }
   }
   return false;
}
Hoottie_McGOOB
107 / 105 / 5
Регистрация: 04.10.2013
Сообщений: 231
08.11.2013, 20:25     Определить функцию, позволяющую распознаёт степени пятерки #12
Даны натуральные число n и целые числа а 1, а 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
 
bool solve_5(int a)
{
    if(a==1) return true;
    else return ((a%5==0)?solve_5(a/5):false); 
}
 
int main()
{
 
    for(int i=1; i<1000000; i++)
        if(solve_5(i))
            cout<<i<<endl;
 
    system("pause");
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.11.2013, 15:48     Определить функцию, позволяющую распознаёт степени пятерки
Еще ссылки по теме:

Определить функцию, позволяющую распознавать наличие вещественных корней в квадратном уравнении C++
C++ Определить процедуру, позволяющую распознавать простые числа
C++ Разработать (и применить) для классов A и B дружественную функцию, позволяющую определять текущую дату и время

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

Или воспользуйтесь поиском по форуму:
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
11.11.2013, 15:48     Определить функцию, позволяющую распознаёт степени пятерки #13
Цитата Сообщение от jurok_85 Посмотреть сообщение
тогда как это можно решить?
if(abs(pow(x, 1.0/i) - 5) < 0.001) //задать погрешность вручную
Yandex
Объявления
11.11.2013, 15:48     Определить функцию, позволяющую распознаёт степени пятерки
Ответ Создать тему
Опции темы

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