Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
tio
0 / 0 / 0
Регистрация: 28.09.2014
Сообщений: 2
1

Напечатать k десятичных знаков числа 1/n

28.09.2014, 16:36. Просмотров 791. Ответов 4
Метки нет (Все метки)

Даны натуральные числа n и k, n > 1. Напечатать k десятичных знаков числа 1/n. (При наличии двух десятичных разложений выбирается то из них, которое не содержит девятки в периоде.) Программа должна использовать только целые переменные.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.09.2014, 16:36
Ответы с готовыми решениями:

Напечатать k десятичных знаков числа 1/n
Даны натуральные числа n и k, n > 1. Напечатать k десятичных знаков числа 1/n....

Числа до 100 десятичных знаков - это как?
Числа до 100 десятичных знаков - это как? Мне нужно написать программу для...

Напечатать строку текста, содержащую минимальное количество знаков препинания
Задается произвольный текст, содержащий не более 10 строк, в каждой строке не...

Выделение десятичных цифр числа
Пользователь вводит любое целое число 1) посчитать количесвто цифр этого числа...

Анализ десятичных цифр числа
Из трехзначного числа Х вычли его последнюю цифру. Когда результат разделили на...

4
zss
Модератор
Эксперт С++
7480 / 6849 / 4324
Регистрация: 18.12.2011
Сообщений: 18,113
Завершенные тесты: 1
28.09.2014, 16:51 2
C++
1
2
3
4
5
int p10=1;
for(int i=1;i<=k;i++)
       p10*=10; //  получаем 10^k
int Mk=p10/n;
cout<<Mk;
0
_Ivana
3236 / 1867 / 235
Регистрация: 01.03.2013
Сообщений: 5,111
Записей в блоге: 5
28.09.2014, 22:45 3
Цитата Сообщение от zss Посмотреть сообщение
получаем 10^k
В инте? А если k=100?
0
Dani
1393 / 637 / 134
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
Завершенные тесты: 1
29.09.2014, 00:21 4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
 
int main()
{
    int n, k;
    std::cin >> n >> k;
    std::cout << "0.";
    for(int i = 0, remainder = 1; i < k; ++i)
    {
        remainder *= 10;
        std::cout << remainder / n;
        remainder %= n;
    }
 
    return 0;
}
Добавлено через 4 минуты
Цитата Сообщение от tio Посмотреть сообщение
(При наличии двух десятичных разложений выбирается то из них, которое не содержит девятки в периоде.)
Вот только это не понял. Что тут хотят? Мы ведь выводим k цифр, а не число с периодом.
0
Somebody
2802 / 1613 / 251
Регистрация: 03.12.2007
Сообщений: 4,215
Завершенные тесты: 3
29.09.2014, 19:19 5
Цитата Сообщение от Dani Посмотреть сообщение
Вот только это не понял. Что тут хотят? Мы ведь выводим k цифр, а не число с периодом.
1/1 = 1 = 0,(9)
В таком случае надо вывести 1,000, а не 0,999 (при том, что округлять по условию не надо).
1
29.09.2014, 19:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.09.2014, 19:19

Сложить два пятидесятизначных десятичных числа
Сложить два пятидесятизначных десятичных числа.Плиз помогите решеть,только в...

Разделение десятичных триад числа в строке
есть строчка например 12345678 а должно вывести 12 345 678... типа справа...

Получить последовательность десятичных цифр числа
Ребята, помогите решить программу! Получить последовательность десятичных цифр...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru