Гость
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Эксель Период дроби / 20 сообщений из 20, страница 1 из 1
26.09.2017, 10:26
    #39526169
Нитка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Доброго времени суток всем!

Можно ли представить в дроби период в виде числа в скобках. Решить с помощью формул Эксель!
Варианты делимого и делителя могут быть абсолютно разные, т.е. те, что введет пользователь и если возникает дробь с периодом, то он должен отображаться в скобках.

Пример: 5/6 = 0,833333...=0,8(3). Вывод в ячейку должен быть 0,8(3)

Дробь может быть как чистая, так и смешанная.

2,7136136 = 2,7(136) - смешанная, то есть период начинается не сразу после запятой.
0,833333 = =0,8(3) - чистая, то есть период начинается сразу после запятой.

Если я правильно понимаю, нужно сначала формуле понять есть ли повторения, потом определить сколько цифр в повторении, т.е. период, ну и записать результат. Повторения можно вывести с помощью формулы MOD, но как определить цикличность - период, который должен быть в скобках, понять не могу.
...
Рейтинг: 0 / 0
26.09.2017, 10:28
    #39526174
Нитка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Простите, чистая дробь 0,333333 = =0,(3) - чистая, то есть период начинается сразу после запятой.
...
Рейтинг: 0 / 0
26.09.2017, 11:12
    #39526226
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
НиткаМожно ли представить в дроби период в виде числа в скобках. Решить с помощью формул Эксель Точности не хватит. Уже для 1/19...
...
Рейтинг: 0 / 0
26.09.2017, 11:57
    #39526285
Нитка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Akina,


Вот нашла алгоритм работы программы на языке php:
<В функцию поступают числовые значения: числитель (делимое) - $numerator и знаменатель (делитель) - $denominator.
Создается вспомогательный массив $array, в который будут записываться результаты деления.
Затем находим остаток от деления $numerator на $denominator - это $modulo.
Задаем счетчик $counter на 1. Образовываем цикл, который будет работать до тех пор, пока остаток $modulo будет равен нулю.
Заносим в массив значение счетчика. Остаток умножаем на 10, т.е. как при делении добавляем ноль.
При помощи функции explode извлекаем то, что находится до точки. И опять находим остаток - $modulo%=$denominator.
Добавляем единицу счетчику. Цикл будет прокручиваться до тех пор, пока не начнет повторяться остаток. Если остаток повторяется, то цикл обрывается.
Затем стоит вспомогательное условие. Если найден модуль, то отображается часть при делении до точки и обработанный период в скобках после точки. Иначе, если периода нет, то просто отображаем результат деления.>

Т.е. когда начинает повторятся остаток, то можно закончить вычисление.
Как это сделать при помощи формул Эксель?
...
Рейтинг: 0 / 0
26.09.2017, 12:21
    #39526312
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
НиткаВот нашла алгоритм работы программыВ начальной школе это называется "деление в столбик". Только хрена с два удастся это закодить формулой...
...
Рейтинг: 0 / 0
26.09.2017, 12:31
    #39526320
Нитка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Akina,

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

Например
1 3 6 1 3 6

Как теперь получить период (136)
...
Рейтинг: 0 / 0
26.09.2017, 13:39
    #39526405
8y89ywefmn2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Если это учебная задача, то ТС должен знать про теорию чисел, теорию сравнений. Если практическая - то откуда ограничение на формулы только?
...
Рейтинг: 0 / 0
26.09.2017, 13:45
    #39526410
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
НиткаНу можно протянуть это деление в строчку, получить ряд, в ряду будут повторяющиеся значенияДостаточно взять в качестве делителя простое число, которое больше количества столбцов, чтобы обломиться.
...
Рейтинг: 0 / 0
26.09.2017, 14:50
    #39526487
Нитка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Да, это учебная задача, можно ограничить вывод результата деления 20тью числами например, большая точность не нужна.
Если в этом диапазоне не будет периода, значит в период не выводим.
...
Рейтинг: 0 / 0
26.09.2017, 15:02
    #39526502
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Ниткаможно протянуть это деление в строчку, получить ряд, в ряду будут повторяющиеся значения

Например
1 3 6 1 3 6

Как теперь получить период (136)Для получения периода потребуется "протягивать" две строки - в первой очередная цифра частного, а во второй целочисленный остаток при делении в столбик. Затем в третьей строке для каждого остатка нужно считать смещение вперёд по строке до того же значения. Период начинается там, откуда это значение станет постоянным, а само значение равно длине периода.
...
Рейтинг: 0 / 0
26.09.2017, 15:21
    #39526519
Нитка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Akina,

<Затем в третьей строке для каждого остатка нужно считать смещение вперёд по строке до того же значения. Период начинается там, откуда это значение станет постоянным, а само значение равно длине периода.>

А можно пример, как считать смещение вперед по строке до того же значения.
...
Рейтинг: 0 / 0
26.09.2017, 15:28
    #39526528
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Ниткакак считать смещение вперед по строке до того же значения.Функцией ПОИСКПОЗ()
...
Рейтинг: 0 / 0
26.09.2017, 22:52
    #39526779
Cane Cat Fisher
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Нитка,

А какой смысл выводить дроби как периодические, если математически это неверно?

Например, если у вас в таблице сидит 0.999999, то это никак не единица, это другое число.
А если мы говорим про 0.(9) - то математически это и есть единица, самая настоящая, без всяких натяжек и погрешностей.

Если вы выведете в ячейку 0.(9), что потом с этим делать будете?
1 - 0.(9) сколько у вас получится?
...
Рейтинг: 0 / 0
27.09.2017, 02:02
    #39526820
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Нитка,

Так подойдет?
...
Рейтинг: 0 / 0
27.09.2017, 07:53
    #39526838
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Cane Cat Fisherесли мы говорим про 0.(9) - то математически это и есть единица
Увы...
0.(9) = 1 - (+0)
...
Рейтинг: 0 / 0
27.09.2017, 09:18
    #39526874
Нитка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
iMrTidy,

Спасибо! Это то, что нужно! Пойду разбираться, как это вы сделали в одной ячейке.

Пробовала с ПОИСКПОЗ(), как посоветовала Akina, получилось, но приходится создавать несколько доп.строк и не смогла понять как отсечь непериодическую дробь. Возможно так тоже можно, но не хватает знаний Эксель.

Сама задачка больше на умение пользоваться формулами Эксель, чем на математику. Спасибо всем!
...
Рейтинг: 0 / 0
27.09.2017, 09:40
    #39526889
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Нитка,

Мое решение совсем не в одной ячейке, а с несколькими доп. столбцами. Не думаю, что можно сделать динамически в одной ячейке, в лучшем случае статически с copy-paste формулы.
...
Рейтинг: 0 / 0
27.09.2017, 10:21
    #39526921
Нитка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
iMrTidy,

Да, увидела. Мне как раз не хватало того способа, которым вы отсекаете непериодическую дробь в результате. Сейчас решение есть, спасибо!
...
Рейтинг: 0 / 0
27.09.2017, 10:23
    #39526927
Gf6gdfh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
AkinaCane Cat Fisherесли мы говорим про 0.(9) - то математически это и есть единица
Увы...
0.(9) = 1 - (+0)Нет. В курсе дискретной математики равенство как раз доказывается. Причём просто.
...
Рейтинг: 0 / 0
27.09.2017, 10:42
    #39526953
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Эксель Период дроби
Gf6gdfhдискретной математики

На то она и дискретная.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Эксель Период дроби / 20 сообщений из 20, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]