JAVA Напишите программу калькулятор. В ней задается три переменных: a (тип int, хранит первое значение), b (тип int, хранит второе значение) и op (тип int хранит код операции:1 –
сложение, 2 – вычитание, 3 – умножение, 4 – деление). Программа должна совершить операцию с двумя переменными a и b, в зависимости от кода операции. Например, a=10; b= 20;
op=3 – в результате программа выведет 200. Поиграйтесь с различными значениями. Обязательно добавьте проверки на неправильные значения (нулевые, отрицательные), проверку
на деление на ноль.
Код неверный
Объяснение:
Вот код:
Первый (простой, работает медленнее)
#include<iostream>
using namespace std;
int main() {
int n;
cin >> n;
for(int i = 1; i <= n; i++) {
if(sqrt(i) == (int)sqrt(i))
cout << i << ' ';
}
}
Фактически мы просто для каждого числа проверяем, является ли его квадратный корень целым числом.
#include<iostream>
using namespace std;
int main() {
int n;
cin >> n;
int x = 1, d = 3;
while(x <= n) {
cout << x << ' ';
x += d;
d += 2;
}
}
Решение основывается на этом утверждении:
Разница между квадратами двух последовательных натуральных чисел больше на 2 разницы между предыдущими двумя квадратами, например:
4 - 1 + 2 = 9 - 4
Доказательство:
Из чего получаем:
Доказано.
В непосредственном режиме- видимо без ввода программы, ввести последовательно строки (сначала присваиваем значение переменной икс, затем вычисляем выражение и помещаем это значение в переменную игрек, и после печатаем значение переменной игрек):
LET X=1.12
LET Y=SQR (X^3+EXP X-LN (3*X))*(1+4*SIN (X/2)+5*EXP (SIN X))
PRINT Y
И записать результат вычислений, который высветится на экране (у меня получилось 27.839525 но у вас может немного отличаться).
Надеюсь, что в вашей версии бейсика нет отличий от той, что у меня (она весьма старая).