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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
nick07x
2 / 2 / 0
Регистрация: 21.03.2011
Сообщений: 55
#1

Реализовать программу умножения чисел столбиком с использованием стека - C++

10.05.2011, 07:16. Просмотров 1205. Ответов 2
Метки нет (Все метки)

Если можно, с комментариями. Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.05.2011, 07:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Реализовать программу умножения чисел столбиком с использованием стека (C++):

Реализовать программу умножения полиномов - C++
Подскажите плиз! нада прогу сдавать а я разобраться немогу(, задали: "Реализовать программу умножения полиномов", на языке С, подскажите...

Составить программу для умножения дроби на дробь с использованием пользовательских функций - C++
Помогите пожалуйста!) Даны две дроби A/B и C/D (A, B, C, D – натуральные числа). Составить программу для умножения дроби на дробь....

Разработать программу, которая изображает на экране монитора умножение столбиком двух введенных натуральных чисел - C++
С++Builder. Разработать программу, которая изображает на экране монитора умножение столбиком двух введенных натуральных чисел.

Реализовать алгоритм умножения двоичных чисел со сдвигом суммы частичного произведения вправо - C++
Создать алгоритм умножения чисел с анализом двухразрядных множителей со сдвигом суммы частичного произведения вправо. Заранее спасибо.

Реализовать программу с использованием template - C++
фууф не могу понять как реализовать эту программу с использованием шаблона template #include <stdio.h> int printmas...

Реализовать программу с использованием библиотеки GGI. - C++
Доброй ночи,помогите пожалуйста с программой. Реализовать программу с использованием библиотеки GGI. Программа рисует стрелочные часы с...

2
silent_1991
Эксперт С++
4984 / 3041 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
10.05.2011, 14:54 #2
Ваши наработки?
0
I_like_C++
29 / 29 / 4
Регистрация: 15.03.2010
Сообщений: 146
Завершенные тесты: 1
10.05.2011, 14:58 #3
смотришь основные функции стека здесь
http://www.cppreference.com/wiki/ru/...er/stack/start
там есть примеры

можешь создать числовой стек (инт или дабл), но тогда ты не сможешь проверить на некорректный воод вводимых символов, а можешь создать строковый стек (читать о строках здесь http://www.cppreference.com/wiki/ru/string/start)

-получаешь у пользователя строку(число)
- проверяешь на корректность (если неправильно, просишь ввести заного или выходишь из программы)
- загоняешь число в стек, посимвольно, начиная с самого первого ( str[0] )
(получиться что в верхушке стека у тебя самый маленький разряд, который и нужен для реализации умножения столбиком)
-со вторым числом делаешь то же самое
-и собственно пишешь функцию умножения:
создаешь копию стека первого числа (вроде, копия должна создаваться в цикле, т.к умножаеться каждый разряд числа)
перемножаешь верхушки стека, при реализации строк, чтобы взять из стрки число нужно вычесть нулвеой символ '0', например, если у тебя такая строкa
C++
1
2
3
4
5
string str = "1234";
int k=0;
int n=4;
for(int i=0; i<n; i++)
     k+=(str[i]-'0')*pow(10.0,(i+1));//чтобы разряд совпадал
или ты можешь подключить потоки sstream
C++
1
2
3
4
5
6
#include <sstream>
...
string str = "1234";
istringstream ss(str);
int k=0;
ss>>k
так весь цикл пока не будет достигнут конец первого числового стека
после перемножения всего первого числа на младший разряд (верхушку стека) второго числа, жту верхушку удаляешь (есть специальная функция в стеке) делаешь тоже самое для следующего разряда второго числа (можешь завести специальную переменную для хранения разрядов, т.к тебе нудо будет умножать на них 10^cnt)

как то так...=/
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.05.2011, 14:58
Привет! Вот еще темы с ответами:

Написать программу умножения ряда нечётных натуральных чисел от 1 до 21, используя указатели - C++
Добрый день! Есть задача, умножить числа 1 * 3 * 5 * 7 * ...* 21, используя циклы int main() { long long x = 1, dob = 1; ...

Не используя никаких операций, кроме умножения и присваивания, составить программу, вычисляющую a7 за 4 операции умножения - C++
1.Дано число a. Не используя никаких операций, кроме умножения и присваивания, составить программу, вычисляющую a7 за 4 операции умножения;...

Написать функцию умножения двух,заданных с клавиатуры чисел, используя только операцию умножения и рекурсию - C++
Помогите пожалуйста с рекурсией Написать функцию умножения двух,заданных с клавиатуры чисел, используя только операцию умножения и...

Реализовать генератор простых чисел с использованием решета Эратосфена и перебора делителей - C++
В этой задаче мы реализуем генератор простых чисел. Простыми называются положительные целые, не имеющие делителей кроме 1 и самого числа....


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

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

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