![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 24.03.2011
Сообщений: 18
|
![]()
задание:
Найти произведение двух n-разрядних десятичных чисел (1<=n<=100), которые заданы в виде символьных строчек Не использовать библиотек stdlib.h, string.h Как алгоритм сделат ьпонимаю, а код чето напсиать не могу. Писал один код, но там для ращрядности больше 10 цифр дает кривой ризал: дабл округляет, а инт переполнен. Вообщем такой алгоритм: есть у тебя 2 числа в 2х массивах - 123, 456. т.е. массивы по 3 элемента. тогда результирующий массив должен быть размером 5(6). ты перемножаешь все разряды первого числа с нулевым разрядом второго числа. заносишь их поэлементно в результирующий. т.е. умножил нулевой разряд первого на нулевой второго, занес в нулевой тертьего, первый на нулевой - в первый третьего и т.п. если все числа в третьем массиве меньше 10, переходишь к перемножению первого числа с первым разрядом второго. если нет, идешь с нулевого элемента третьего массива и сравниваешь числа с 10. если больше - то -10 к текущему значению ячейки, + 1 к значению следующей ячейки Ну если комуто надо, то старая прога, но походу она не нужна. Код:
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
![]()
__int64 - не нужен априори. 100-значные числа не влезут.
Смысл в том, чтобы выполнить умножение "в столбик" (есть способы чуть быстрее, но не думаю, что они сейчас для Вас актуальны): Код:
|
![]() |
![]() |
![]() |
#3 | |
Пользователь
Регистрация: 24.03.2011
Сообщений: 18
|
![]() Цитата:
мне бы код, а то уже полтоыр неелди парюсь, не могу сам никак. |
|
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
![]() Цитата:
Код:
|
|
![]() |
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 24.03.2011
Сообщений: 18
|
![]() Цитата:
можна как то 6,7 ,9 и 11 пункт пояснить? ___________ будьте осторожны, Оверквотинг (overquoting) (избыточное цитирование) на форуме запрещено! цитируйте только то, что Вам необходимо при ответе, не надо цитировать полностью ответ. Модератор. Последний раз редактировалось Serge_Bliznykov; 29.10.2012 в 08:55. |
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
![]()
Функции ReadLongNumber, OutputLongNumber, InitWithZeroes, CharToNum и NumToChar Вам придётся написать самостоятельно. Должны делать ровно то, что написано (NumToChar и CharToNum преобразуют значение цифры в соответствующий ей символ и обратно).
Код:
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вычисление максимального из заданых чисел | jaros21 | Помощь студентам | 2 | 24.03.2011 00:53 |
Вычеслить произведение элементов с парными индексами заданых массивов D(18),E(14),G(15),и вывести их отде | AndrewPl | Помощь студентам | 9 | 14.05.2010 09:50 |
Поиск одинаковых значений в стобце, возврат суммы чисел из другого столбца в найденных строках! | Kup | Microsoft Office Excel | 2 | 25.03.2010 10:15 |
Найти найменший прямоугольник,который описывает два заданых отрезка | мукуль | Помощь студентам | 2 | 21.02.2009 17:43 |
поиск и замена файлов в заданых каталогах | adramelech | Общие вопросы Delphi | 1 | 12.09.2007 16:29 |