|
1 / 1 / 3
Регистрация: 31.10.2012
Сообщений: 93
|
||||||
Реализовать 4 функции на простейшие арифметические операции (+,-, *, /)18.09.2014, 20:39. Показов 10457. Ответов 14
Метки нет (Все метки)
Начал изучать указатели. Вошёл туго. Очень хочу разобраться самостоятельно, но задачи сдавать тоже нужно. Прошу помощи в решении задачи.
Условие: Реализовать 4 функции на простейшие арифметические операции (+,-,*,/). Каждая функция должна принимать два вещественных числа и возвращать результат операции в виде вещественного числа. В главной функции создайте массив из 4-х указателей на эти функции. Добавьте меню, в котором пользователь может выбрать желаемую операцию. Напишите программу без использования операторов if и switch. А это то, где я застрял:
0
|
||||||
| 18.09.2014, 20:39 | |
|
Ответы с готовыми решениями:
14
|
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
||||||
| 18.09.2014, 21:16 | ||||||
|
krigan, сделал для операций сложения и умножения. Дальше думаю сам доделаешь
1
|
||||||
|
1 / 1 / 3
Регистрация: 31.10.2012
Сообщений: 93
|
|
| 19.09.2014, 11:26 [ТС] | |
|
При компиляции ругается на 19 строку - 1>c:\users\documents\visual studio 2012\projects\1_12\1_12\1_12.cpp(19): error C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> c:\program files\microsoft visual studio 11.0\vc\include\stdio.h(290) : see declaration of 'scanf'
0
|
|
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
| 19.09.2014, 11:36 | ||||||
Сообщение было отмечено krigan как решение
Решение
Опять этот мелкософт со своими предложениями..
Можете переписать код на C++, раз все равно запускаете в cpp.
1
|
||||||
|
1 / 1 / 3
Регистрация: 31.10.2012
Сообщений: 93
|
|
| 19.09.2014, 11:40 [ТС] | |
|
Спасибо! Всё работает. Окончательный вариант выложу на обозрение.
0
|
|
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
||||||
| 19.09.2014, 12:08 | ||||||
|
krigan, в самой первой строчке до include напиши
1
|
||||||
|
1 / 1 / 3
Регистрация: 31.10.2012
Сообщений: 93
|
||||||
| 19.09.2014, 12:15 [ТС] | ||||||
|
Вот что получилось:
0
|
||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||
| 19.09.2014, 12:17 | ||
|
Надо проверять именно чтобы число было от 1 до 5
1
|
||
|
1 / 1 / 3
Регистрация: 31.10.2012
Сообщений: 93
|
||||||
| 19.09.2014, 12:21 [ТС] | ||||||
|
Исправил. Правда я не понимаю как читается functions[code-1](a, b)
0
|
||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 19.09.2014, 12:27 | |
|
krigan, functions - это, в общем-то обычный массив указателей.
functions[0] == add functions[1] == ded functions[2] == mult functions[3] == div Соответственно, при code == 1 мы получаем code - 1 == 1 - 1 == 0, т.е. вызывается functions[0] - add. При code == 4 мы получаем code - 1 == 4 - 1 == 3, т.е. вызывается functions[3] - это последний элемент, div. А дальше просто вызываем эту функцию..
1
|
|
|
1 / 1 / 3
Регистрация: 31.10.2012
Сообщений: 93
|
|
| 19.09.2014, 12:47 [ТС] | |
|
Теперь понял. Спасибо
0
|
|
|
"C with Classes"
|
|
| 22.09.2014, 17:09 | |
|
А выход за диапазон значений не проверяете?
0
|
|
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 22.09.2014, 17:23 | |
|
0
|
|
|
"C with Classes"
|
|
| 22.09.2014, 18:28 | |
|
Я имел ввиду что бы результат не вышел из диапазона.
0
|
|
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 22.09.2014, 18:47 | |
|
Для учебной задачи, коей программа и является, это лишнее. А вот проверку на то, что второе число может быть нулем, а на ноль делить нельзя - это да, стоило бы добавить..
1
|
|
| 22.09.2014, 18:47 | |
|
Помогаю со студенческими работами здесь
15
С помощью операторов выбора реализовать арифметические операции над двумя числами
Реализовать арифметические операции в различных системах счисления
Простейшие арифметические действия Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes.
А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения
развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам
Кирхгофа, решает её и находит:
токи, напряжения и их 1 и 2 производные при t = 0;. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
|
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|