Когда говорят о написании первой программы часто говорят "написать калькулятор"
Что это значит?
Арифметические функции уже встроены в язык, и остается написать интерфейс?
Или интерфейс не пишется, и имеется в виду, что нужно прописать значения...?
Что из себя представляет код этого самого калькулятора? - не важно, на каком языке.
Другие языки программирования и технологии
Что значит - "написать калькулятор"?
Относительно простая задача, похожая на практическую, примерно то, с чем вы будете сталкиваться постоянно, если будете работать программистом.
Да, арифметические функции встроены в язык и прочее, но в процессе написания вы столкнетесь с очень многими сложностями, например, обработка деления на ноль (или очень маленькие числа), ввод букв или иероглифов вместо цифр, да можно придумать много чего. И все это ваш написанный калькулятор должен спокойно переваривать и, самое главное, выдавать правильный результат.
Да, арифметические функции встроены в язык и прочее, но в процессе написания вы столкнетесь с очень многими сложностями, например, обработка деления на ноль (или очень маленькие числа), ввод букв или иероглифов вместо цифр, да можно придумать много чего. И все это ваш написанный калькулятор должен спокойно переваривать и, самое главное, выдавать правильный результат.
Настоящий графический калькулятор должен учитывать приоритет умножения и деления над сложением и вычитанием и приоритет операций в скобках. Для этого нужны алгоритмы постфиксной записи и обратной польской нотации. Ни в один язык это даже близко не встроено, там самому нужно думать головой.
Я вот как раз совсем недавно писал такой калькулятор. Код по ссылке
https://jsfiddle.net/mbfwuj9v/3/
Если сама польская нотация далась легко, то чуть посложнее были такие вещи как лексический анализ строки для преобразования ее в массив положительных и отрицательных чисел с десятичной точкой, знаков операций и скобок (чтобы все были отдельно, вроде это называется токены) и особенно не просто оказалось с переводом инфиксной записи в постфиксную.
Так что реализация полноценного графического калькулятора это задача сравнительно сложная
Я вот как раз совсем недавно писал такой калькулятор. Код по ссылке
https://jsfiddle.net/mbfwuj9v/3/
Если сама польская нотация далась легко, то чуть посложнее были такие вещи как лексический анализ строки для преобразования ее в массив положительных и отрицательных чисел с десятичной точкой, знаков операций и скобок (чтобы все были отдельно, вроде это называется токены) и особенно не просто оказалось с переводом инфиксной записи в постфиксную.
Так что реализация полноценного графического калькулятора это задача сравнительно сложная
Понятно, что некоторые операции встроены в язык... но каким образом ты их будешь использовать?
Ввод пользователя подается строкой и тебе придется все это отпарсить так, чтобы учесть все приоритеты, скобки и т. п. каким либо подходящим алгоритмом. И уже, преобразуя в числа, применять те самые операции.
Ввод пользователя подается строкой и тебе придется все это отпарсить так, чтобы учесть все приоритеты, скобки и т. п. каким либо подходящим алгоритмом. И уже, преобразуя в числа, применять те самые операции.
Тебе нужно разработать интерфейс (чтобы был похож на калькулятор), а потом писать код для каждой кнопки.. умножение.. деление и тд.
В качестве первой программы подойдёт самый простой калькулятор, сконструированный как консольное приложение, а не как приложение с пользовательским интерфейсом. Но тут как раз всё зависит от используемого алгоритмического языка. Вот как можно написàть простенький калькулятор на С++:
#include <iostream>
#include <string>
using namespace std; int main()
{ double a, b; string c; while (1) { cout << "» ";
cin >> a >> c >> b; if (c == "+") cout << a + b;
if (c == "-") cout << a - b; if (c == "*" || c == "·" ||
c == "×") cout << a * b; if (c == "/" || c == "÷")
cout << a / b; cout << endl; } }
А вот как делается гораздо более сложный калькулятор на Питоне:
import math
while 1: print(eval(input("» ")))
#include <iostream>
#include <string>
using namespace std; int main()
{ double a, b; string c; while (1) { cout << "» ";
cin >> a >> c >> b; if (c == "+") cout << a + b;
if (c == "-") cout << a - b; if (c == "*" || c == "·" ||
c == "×") cout << a * b; if (c == "/" || c == "÷")
cout << a / b; cout << endl; } }
А вот как делается гораздо более сложный калькулятор на Питоне:
import math
while 1: print(eval(input("» ")))
Похожие вопросы
- Помогите с python(написать калькулятор)
- Написал калькулятор на c++ он не работает вот код
- как написать курсовую на тему - разработать простейший калькулятор?!
- Программируемые калькуляторы - выбор б/у девайса
- Напишите код для visual basic 6 чтоб калькулятор работал в режим deg и rad ли напишите эту функцию
- C++ калькулятор
- Калькулятор на паскале
- помогите составить калькулятор на Delphi ?
- Не работает простейший PHP калькулятор.
- Помогите Написать Програму вычесляющие орефметические вырожения аналогично калькулятору В pascal!
...что неожиданно - алгоритмы счета не заложены в языки.
параллельно я изучаю html, так что ваш пример - очень кстати))...