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

как записать числа n и k в виде составного числа nk

05.09.2013, 23:54. Показов 2451. Ответов 26
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
как записать числа n и k в виде составного числа nk
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.09.2013, 23:54
Ответы с готовыми решениями:

Как массив цифр записать в виде одного числа?
Как массив цифр записать в виде одного числа? Например: есть массив а=2,a=4,a=5,a=9, а нужно...

Записать в развернутом виде числа
Записать в развернутом виде числа а) А10 = 125,34,(число 125,34 в десятичной системе счисления);...

Записать выражение в виде степени числа 2
не могу сообразить чего тут сделать надо ...

Ввести в программу строку (числа, латиница), считать только числа, записать числа в массив
Нужна помощь! Срочно! Нужно ввести в программу строку (числа, латиница), считать только числа,...

26
Модератор
Эксперт по электронике
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
06.09.2013, 18:51 21
Author24 — интернет-сервис помощи студентам
Raali,
твой подход но без ветвлений
правда он немного неочевиден
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int digits(int x)  
{  
return 10*(x < 10)+   
 (x < 100 && x>=10)*100+   
 (x < 1000 && x>=100)*1000+   
 (x < 10000 && x>=1000)*10000+   
 (x < 100000 && x>=10000)*100000+
 (x < 1000000&& x>=100000)*1000000+ 
 (x < 10000000&& x>=1000000)*10000000+
 (x < 100000000&& x>=10000000)*100000000+
 (x < 1000000000&& x>=100000000)*1000000000+
 (x>=1000000000)*10000000000;
}

Не по теме:

нули проверь я не уверен что в них не запутался



Добавлено через 51 секунду
Цитата Сообщение от dmitry94 Посмотреть сообщение
atoi() самый быстрый вариант в данном случае
особенно atoi
2
Raali
06.09.2013, 18:53
  #22

Не по теме:

Цитата Сообщение от ValeryS Посмотреть сообщение
правда он немного неочевиден
зато какой красивый xD
похож на лезвие канцелярского ножа)

0
567 / 198 / 70
Регистрация: 25.05.2012
Сообщений: 816
06.09.2013, 19:16 23
Цитата Сообщение от ValeryS Посмотреть сообщение
особенно atoi
Да, извиняюсь, сам уже понял, что ерунду сказал.
0
Модератор
Эксперт по электронике
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
06.09.2013, 19:16 24
dmitry94,
у тебя здесь ошибка
Цитата Сообщение от dmitry94 Посмотреть сообщение
(d(10,i) > n)
сравнивать нужно с k а не с n
и
Цитата Сообщение от dmitry94 Посмотреть сообщение
i-(i-2)
ты не поверишь но всегда будет 2
раскроем скобки
i-(i-2)=i-i+2=2
1
567 / 198 / 70
Регистрация: 25.05.2012
Сообщений: 816
06.09.2013, 20:02 25
Цитата Сообщение от ValeryS Посмотреть сообщение
dmitry94,
ты не поверишь
i-(i-2)=i-i+2=2
Я поверю

Добавлено через 7 минут
Код писался второпях, по этому была допущена данная ошибка. Результат от этого не меняется.
0
Модератор
Эксперт по электронике
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
06.09.2013, 20:11 26
Цитата Сообщение от dmitry94 Посмотреть сообщение
Результат от этого не меняется.
при данных цифрах да
но попробуй например 5 и 123, в разных сочетаниях, и приятно удивишся
1
567 / 198 / 70
Регистрация: 25.05.2012
Сообщений: 816
07.09.2013, 14:14 27
Исправил
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
29
30
31
32
33
34
35
36
#include <iostream>
 
unsigned long long d(int in,int dg) //возведение числа in в степень dg
{
    unsigned long long  n = 1;
    for(int i=0; i<dg; i++) n *= in;
    return n;
}
 
int main() 
{
    int n=32, k=45;
    int dg_n = 0;
    int dg_k = 0;
    unsigned long long result=0;
 
    for (int i=1; i< 10; i++) 
        if (d(10,i) > n)
        {
            dg_n = i;
            break;          
        }
    for (int i=1; i< 10; i++) 
        if (d(10,i) > k)
        {
            dg_k = i;
            break;          
        }
 
        double f_n=(double)n/d(10,dg_n);
        result = f_n*d(10,dg_n+dg_k)+k;
 
        std::cout << "result= " << result;
 
    return 0;
}
0
07.09.2013, 14:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.09.2013, 14:14
Помогаю со студенческими работами здесь

Дан файл, содержащий целые числа. Записать их в другие два файла, при этом в первый записать четные, а во второй нечетные числа
Дан файл, содержащий целые числа. Записать их в другие два файла, при этом в первый записать...

Дан файл, содержащий целые числа. Записать их в другие два файла, при этом в первый записать четные, а во второй нечетные числа.
Дан файл, содержащий целые числа. Записать их в другие два файла, при этом в первый записать...

Записать в файл все числа от нуля до 2^16 в hex-виде
Здравствуйте, как записать все комбинации 2^16 (в hex-виде) в блокнот ?

С клавиатуры вводятся целые числа. Признак конца ввода – ноль. Записать в строку эти числа как вещественные в нормализов
Нельзя использовать функции преобразования типов. Напишите вот эту часть задачи: С клавиатуры...


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

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