Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/75: Рейтинг темы: голосов - 75, средняя оценка - 4.96
1 / 1 / 0
Регистрация: 06.04.2015
Сообщений: 29

Простой калькулятор

06.04.2019, 18:16. Показов 14502. Ответов 18

Студворк — интернет-сервис помощи студентам
Не могу понять что не так. При запуске принимает num1 num2 и operationType(=-*/), но вместо выдачи результата опять спрашивает данные (

Java
1
2
3
4
5
6
7
8
public class Main {
    public static void main(String[] argc){
        System.out.println("Hi, give me your tusk");
        Calculator calculator = new Calculator();
        calculator.scan();
        calculator.operation();
    }
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import java.util.Scanner;
 
public class Calculator {
    int num1, num2, result;
 
    public String scan() {
        Scanner inputScanner = new Scanner(System.in);
        System.out.println("Give me your first number:");
        num1 = inputScanner.nextInt();
        System.out.println("Give me your second number:");
        num2 = inputScanner.nextInt();
        System.out.println("What operation do you want to perform:");
        String operationType = inputScanner.next();
        return operationType;
    }
 
    public void operation(){
        if (scan().equals("*")){
            result = num1 * num2;
            System.out.println("Your result =" + result);
        }
        else if (scan().equals("/")){
            result = num1 / num2;
            System.out.println("Your result =" + result);
        }
        else if (scan().equals("+")){
            result = num1 + num2;
            System.out.println("Your result =" + result);
        }
        else if (scan().equals("-")){
            result = num1 - num2;
            System.out.println("Your result =" + result);
        }
        else {
            System.out.println("You entered an incorrect value");
        }
    }
}
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.04.2019, 18:16
Ответы с готовыми решениями:

Простой калькулятор
Пожалуйста помогите!)) Нужно написать приложение "Простой калькулятор". Пользователь вводит строку с арифметическим выражением,...

Написать простой калькулятор для чисел BigDecimal
Всем доброго времени суток. Помогите написать простой калькулятор для чисел BigDecimal, в виде: Число1 (знак) Число2 Калькулятор...

Простой калькулятор
сделал простой консольный калькулятор, но есть одна проблема, вот код: import java.io.BufferedReader; import java.io.IOException; ...

18
 Аватар для ArtemFM
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
06.04.2019, 18:35
Лучший ответ Сообщение было отмечено Dnepranin как решение

Решение

18, 22, 26 и т.д. ты вызываешь метод scan() раз за разом
scan().equals("*")

scan()... - это ты запускаешь метод заново
1
0 / 0 / 0
Регистрация: 27.04.2020
Сообщений: 22
27.04.2020, 17:23
Сразу хочу сказать, что на форуме вариантов таких калькуляторов хоть и много, но всё равно для случайных посетителей, как я считаю, этот код может пригодиться. Да и к тому же позднее вопрос на эту тему я не видел, поэтому пока вопрос свежий, можно об этом всём и написать.
В общем: в моей версии есть 4 типа расчётов: алгебраические вычисления, геометрические, физические и банковские. Всё построено на условной конструкции SWITCH: в зависимости от написанного ответа в виде цифр от одного до четырёх главный код запускает нужный метод с нужными операциями. Если честно, все методы можно было бы написать в отдельном классе(классах), но я писал код раньше освоения классов.
Также в главном методе я создал переменную CICLE, которая всегда равна 1, и которая позволяет работать программе циклично, не выходя из неё никогда, не считая того, что я не прописал исключения, ведь после ввода иных символов, программа закроется с ошибкой.
Главный класс называется CV5, т.е. Calculator ver. 5. В ,,меню'' мы имеем 6 вариаций хода программы: -1 - ,,пасхалка", 0 - информация о программе и создателе, 1-4 вид операций.
Каждая переменная, нужная для расчёта, объявлена типом double.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
import java.util.Scanner;
 
public class cv5 {
    
    static void algebra() {
        Scanner in = new Scanner(System.in);
        int type_algebra;
        System.out.print("Что именно нужно? 1-сумма, 2-вычитание, 3-умножение, 4-деление, 5-процент от числа, 6-возведение в степень, 7-квадратный корень : ");
        type_algebra=in.nextInt();
        do{
            if(type_algebra>7){
                System.out.print("Такой операции не существует! Что именно нужно? 1-сумма, 2-вычитание, 3-умножение, 4-деление, 5-процент от числа, 6-возведение в степень, 7-квадратный корень : ");
                type_algebra=in.nextInt();
            }
        } while (type_algebra>7);
        switch(type_algebra) {
            
                case 1:
                    System.out.print("Первое слагаемое = ");
                    double s1 = in.nextDouble();
                    System.out.print("Второе слагаемое = ");
                    double s2 = in.nextDouble();
                    System.out.printf("Сумма = %.3f \n", s1 + s2);
                    break;
 
                case 2:
                    System.out.print("Уменьшаемое = ");
                    double u1 = in.nextDouble();
                    System.out.print("Вычитаемое = ");
                    double u2 = in.nextDouble();
                    System.out.printf("Разность = %.3f \n", u1 - u2);
                    break;
 
                case 3:
                    System.out.print("Первый множитель = ");
                    double umn1 = in.nextDouble();
                    System.out.print("Второй множитель = ");
                    double umn2 = in.nextDouble();
                    System.out.printf("Произведение = %.3f \n", umn1 * umn2);
                    break;
 
                case 4:
                    double del1;
                    double del2;
                    System.out.print("Делимое = ");
                    del1 = in.nextDouble();
                    System.out.print("Делитель = ");
                    del2 = in.nextDouble();
                    double chastnoe = del1 / del2;
                    System.out.printf("Частное = %.3f \n", chastnoe);
                    break;
                    
                case 5:
                    double proc1;
                    double proc2;
                    double proc_itog;
                    double sto = 100;
                    System.out.print("Введите число = ");
                    proc1 = in.nextDouble();
                    System.out.print("Какой процент = ");
                    proc2 = in.nextDouble();
                    proc_itog = (proc1 * proc2);
                    double proc_itog_na_sto = proc_itog/sto;
                    System.out.printf("Итого = %.3f \n", proc_itog_na_sto);
                    break;
                    
                case 6:
                    double step1;
                    double step2;
                    System.out.print("Число = ");
                    step1 = in.nextDouble();
                    System.out.print("Степень = ");
                    step2 = in.nextDouble(); 
                    double step_itog = Math.pow(step1, step2);
                    System.out.printf("Итог = %.3f \n", step_itog);
                    break;
                    
                case 7:
                    double kor1;
                    System.out.print("Число = ");
                    kor1 = in.nextDouble();
                    System.out.printf("Корень = %.3f \n", Math.sqrt(kor1));
                    break;
            
        }
    }
    
    static void bank() {
    Scanner in = new Scanner(System.in);
        System.out.print("Что именно нужно здесь расчитать? 1-переплату, 2-ежемесячный доход по депозиту : ");
        int type_bank = in.nextInt();
        do {
            if (type_bank>2) {
                System.out.print("Неверный код операции! 1-переплату, 2-ежемесячный доход по депозиту : ");
                type_bank = in.nextInt();
            }
        } while(type_bank>2);
        
        switch (type_bank) {
            case 1:
            double vzyal;
            double stavka;
            double dney_v_godu = 365;
            double let;
            double dney;
            double pereplata_1;
            double pereplata_2;
            double pereplata_itog;
            System.out.print("Сколько взял = ");
            vzyal = in.nextDouble();
            System.out.print("Процентая ставка (без %) = ");
            stavka = in.nextDouble();
            System.out.print("Срок кредита (в годах) = ");
            let = in.nextDouble();
            dney = 365*let;
            pereplata_1 = vzyal*stavka/100*dney/dney_v_godu;
            pereplata_2 = vzyal*0.01*stavka;
            pereplata_itog = pereplata_1+pereplata_2;
            System.out.printf("Переплата = сумма кредита*ставка/100*срок кредита в днях/365+сумма кредита*0.01*ставка =  %.3f \n", pereplata_itog);
            break;
            
            case 2:
            double depozit;
            double stavka_type_bank_2;
            double dohod;
            System.out.print("Депозит = ");
            depozit = in.nextDouble();
            System.out.print("Ставка (без %) = ");
            stavka_type_bank_2 = in.nextDouble();
            dohod = depozit*stavka_type_bank_2/100*30;
            double dohod_2 = dohod/360;
            System.out.printf("Вознаграждение = депозит*ставка*30 дней/360 дней = %.3f \n", dohod_2);
            break;  
        }
}
    
    static void S() {
        Scanner in = new Scanner(System.in);
        int s_imenno;
        System.out.print("Площадь чего нужно найти? 1-квадрата, 2-прямоугольника, 3-трапеции : ");
        s_imenno = in.nextInt();
        do {
            if(s_imenno>3){
                System.out.print("Неверный код операции! 1-квадрата, 2-прямоугольника, 3-трапеции : ");
                s_imenno = in.nextInt();
            }
        } while (s_imenno>3);
        
        switch(s_imenno) {
            case 1:
            double quadro;
            double dlina_quadro;
            System.out.print("Длина стороны квадрата = ");
            dlina_quadro = in.nextDouble();
            quadro = dlina_quadro*dlina_quadro;
            System.out.printf("Площадь квадрата = a*a = %.3f \n", quadro);
            break;
            
            case 2:
            double pryamo_a;
            double pryamo_b;
            System.out.print("Длина прямоугольника (а) = ");
            pryamo_a = in.nextDouble();
            System.out.print("Длина прямоугольника (b) = ");
            pryamo_b = in.nextDouble();
            double s_pryamo = pryamo_a * pryamo_b;
            System.out.printf("Площадь прямоугольника = a*b = %.2f \n", s_pryamo);
            break;
            
            case 3:
            double trap_a;
            double trap_b;
            double h_trap;
            double s_trap_1;
            double s_trap_2;
            double s_trap_itog;
            System.out.print("Длина вернехо основания = ");
            trap_a = in.nextDouble();
            System.out.print("Длина нижнего основания = ");
            trap_b = in.nextDouble();
            System.out.print("Высота трапеции = ");
            h_trap = in.nextDouble();
            s_trap_1 = trap_a + trap_b;
            s_trap_2 = s_trap_1/2;
            s_trap_itog = s_trap_2*h_trap;
            System.out.printf("Площадь трапции = ((a+b)/2)*h = %.2f \n", s_trap_itog);
            break;
            
        }
    }
    
    static void fizika() {
        Scanner in = new Scanner(System.in);
                    System.out.print("Какую физическую формулу надо решить? 1-ток, напряжение, сопротивление; 2-теория относительности : ");
                    int fiz = in.nextInt();
                    do {
                    if(fiz > 2){
                        System.out.print("Неверный код операции! 1-ток, напряжение, сопротивление; 2-теория относительности : ");
                        fiz=in.nextInt();
                    }
                    } while (fiz > 2);
                    
                    switch (fiz) {
                        
                    case 2:
                    System.out.print("Для расчёта энергии для преодоления скорости света существует формула Энштейна: E=mc^2.");
                    long massa;
                    long v_sveta = 299792458;
                    System.out.print(" Для расчёта введите массу объекта, округлённую до целых чисел = ");
                    massa = in.nextLong();
                    long E = v_sveta*v_sveta*massa;
                    System.out.printf("E = %d Дж \n", E);
                    break;  
                    
                    case 1:
                    System.out.print("Что иммено найти: 1-ток, 2-напряжение, 3-сопротивление : ");
                    int fiz_imenno=in.nextInt();
                    double i;
                    double u;
                    double r;
                    do {
                        if (fiz_imenno>3) {
                            System.out.print("Неверный код операции! 1-ток, 2-напряжение, 3-сопротивление : ");
                            fiz_imenno=in.nextInt();
                        }
                    }while (fiz_imenno>3);              
                    
                    
                    switch (fiz_imenno) {
                        case 1:
                        System.out.print("Введите сопротивление = ");
                        r = in.nextDouble();
                        System.out.print("Введите напряжение = ");
                        u = in.nextDouble();
                        i = u/r;
                        System.out.printf("Ток = U/R = %.3f А \n", i);
                        break;
                        
                        case 2:
                        System.out.print("Введите ток = ");
                        i = in.nextDouble();
                        System.out.print("Введите сопротивление = ");
                        r = in.nextDouble();
                        u = i*r;
                        System.out.printf("Напряжение = R*I = %.3f В \n", u);
                        break;
                        
                        case 3:
                        System.out.print("Введите напряжение = ");
                        u = in.nextDouble();
                        System.out.print("Введите ток = ");
                        i = in.nextDouble();
                        r = u/i;
                        System.out.printf("Сопротивление = U/I = %.3f Ом \n", r);
                        break;
                        
                    }
                    }
    }
    
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        System.out.print("Данный калькулятор очень примитивен и требуют ввода дробных чисел с запятой вместо точки, но только после выбора операции. ");
 
        int cicle = 1;
        do {
            System.out.print("Что выберете? 0-о программе, 1-алгебраические операции, 2-расчёты площадей геометрических фигур, 3-физические расчёты, 4-банковские расчёты : ");
            int type = in.nextInt();
            do {
                if(type>4) {
                    System.out.print("Данной операции не существует! 1-алгебраические операции, 2-расчёты площадей геометрических фигур, 3-физические расчёты, 4-банковские расчёты :  ");
                    type = in.nextInt();
                }
                } while(type>4);
            switch(type) {
                
                case -1:
                System.out.print("Поздравляю! Ты нашёл пасхалку! Дата её создания = 04.04.2020 ");
                break;
                
                case 0:
                System.out.print("Версия программы: 5; создатель: Владислав С. (Duco Exin); год: 2020; язык программирования: Java; версия Java Development Kit (JDK): 14. ");
                break;
                
                case 1:
                algebra();
                break;
                
                case 2:
                S();
                break;
                
                case 3:
                fizika();
                break;
                
                case 4:
                bank();
                break;
            }
            
        } while(cicle==1);
    }
}
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
27.04.2020, 17:28
Цитата Сообщение от DucoExin Посмотреть сообщение
этот код может пригодиться
не может
0
0 / 0 / 0
Регистрация: 27.04.2020
Сообщений: 22
27.04.2020, 18:43
Я про то, что какой-нибудь случайный ,,прохожий" также будет искать разные варианты кода и что-то может взять для себя, к примеру, как я. Я тоже интересовался вариациями кода и было просто интересно посмотреть на что-то иное, не как у меня. Да, в данной теме мой код не актуален. Но в будущем он может кому-то приглянуться.
0
 Аватар для Goongala
1022 / 562 / 185
Регистрация: 18.08.2013
Сообщений: 2,027
Записей в блоге: 2
27.04.2020, 18:49
Странно, что ты используешь JDK 14, но притом у тебя в коде старый формат switch
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
27.04.2020, 19:56
Цитата Сообщение от DucoExin Посмотреть сообщение
Также в главном методе я создал переменную CICLE, которая всегда равна 1, и которая позволяет работать программе циклично, не выходя из неё никогда
Сильный ход.
while (true) уже не в почёте?
0
0 / 0 / 0
Регистрация: 27.04.2020
Сообщений: 22
28.04.2020, 08:21
А какая разница?
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
28.04.2020, 08:48
Ну чего бы тогда не написать while (2*2==4) ?
Тоже ништяк

Добавлено через 16 минут
DucoExin, а если серьезно - зачем создавать лишнюю переменную, которая ничего не делает кроме того, что сбивает с толку? А ежели код будет не на 10 строчек, то увидев эту переменную в условии придется перекопать тонну кода, чтобы понять - занахренами она там нужна, что она делает, и при каких обстоятельствах изменяется? Если уж тебя прет туда переменную поставить - поставь константу, назвав ее соответствующим образом.
Java
1
2
3
4
5
6
7
private final boolean ALWAYS = true;
 
//...
 
do {
//...
} while (ALWAYS);
Добавлено через 6 минут
Цитата Сообщение от DucoExin Посмотреть сообщение
требуют ввода дробных чисел с запятой вместо точки
Java
1
2
Scanner scan = new Scanner(System.in);
scan.useLocale(Locale.US);
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
28.04.2020, 10:19
назвав ее соответствующим образом - TRUE
0
0 / 0 / 0
Регистрация: 27.04.2020
Сообщений: 22
28.04.2020, 12:30
Код писался раньше, чем я получил новые знания о классах. Я бы смог упростить код, отсортировав методы в класс(-ы). Я же написал, что версия программы пятая, а до этого у меня было ещё четыре версии, и код там был по-другому, просто я забросил развитие калькулятора и не стал заморачиваться и всё переделывать. Для меня лучше выглядит int cicle, а не boolean.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
28.04.2020, 12:34
Цитата Сообщение от DucoExin
версия программы пятая, а до этого у меня было ещё четыре версии
0
 Аватар для Aviz__
2748 / 2056 / 508
Регистрация: 17.02.2014
Сообщений: 9,483
28.04.2020, 12:46
Цитата Сообщение от DucoExin Посмотреть сообщение
я забросил развитие калькулятора
и правильно сделал! тока вот зачем ты своей, именно 5-й версией решил поделиться с миром, который 90% не умеет пользоваться гуглом, не понятно!
0
528 / 263 / 70
Регистрация: 11.12.2016
Сообщений: 1,223
28.04.2020, 14:52
Да ладно вам.
Человек старался сам написал (как умеет) и с радостью достигнутого решил поделится.
Здесь куча тем где ни "Здрастье ни Пожалуйста" ни даже вопроса а просто скопипастили задание.
Автору могу посоветовать не терять интерес и при освоении новых разделов примерятся "как бы мне это помогло здесь улучшить" ну и слушаться советов опытных, "отталкиваясь от разумной критики двигаешся в правильном направлении". За старания молодец. От себя добавлю, очень большие свитчи, складывается впечатление что вся программа одни свитчи.
1
 Аватар для Aviz__
2748 / 2056 / 508
Регистрация: 17.02.2014
Сообщений: 9,483
28.04.2020, 15:52

Не по теме:

ViktorFX, ты же в курсе! этих, которые копипастят, мы легко уберем, как конкурентов давая решения, а DucoExin, голыми руками не возьмешь...

0
0 / 0 / 0
Регистрация: 27.04.2020
Сообщений: 22
28.04.2020, 18:31
Во, наконец то, спокойное и конструктивное сообщение. За похвалу благодарю ) А что насчёт свитчей, то да, это основа программы, т.к. всегда идёт выбор между операциями. Я как раз и хотел универсальный калькулятор, который будет высчитывать физические формулы, находить площади фигур и тому подобное в целом. Мне кажется, нужно было вводить основной код сверху, а методы уже под ним, тогда было бы более понятно, или вообще на классы поделить. Я вот, например, узнал больше о вводе ,,спец. знаков'' для выбора последующих действий. В моём случае это бы не работало, т.к. у меня помимо алгебраических операций есть и другие. Так что все рабочие варианты стоит рассматривать. Как бы то не было, в шестой версии я уже буду писать код с конструкцией IF.
0
0 / 0 / 0
Регистрация: 27.04.2020
Сообщений: 22
04.05.2020, 16:06
Цитата Сообщение от Dnepranin Посмотреть сообщение
public static void main(String[] argc){
ошибка в ,,args"
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
04.05.2020, 16:10
DucoExin, это имя аргумента. Там хоть хренаргс напиши.
0
 Аватар для Aviz__
2748 / 2056 / 508
Регистрация: 17.02.2014
Сообщений: 9,483
04.05.2020, 16:30
так
Цитата Сообщение от DucoExin Посмотреть сообщение
args
не то же, что
Цитата Сообщение от DucoExin Посмотреть сообщение
argc
))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.05.2020, 16:30
Помогаю со студенческими работами здесь

Простой калькулятор на java не понимаю(
Помогите разобраться с программой что в ней что public class Calculator { private double first; private double second; ...

Простой калькулятор и калькулятор с парсингом
Ребят я совсем не давно только начал изучать сишку, решил написать простенький калькулятор который работает с 2 числами. Возник вопрос, как...

Простой калькулятор
Убил часа 2 уже,не могу понять,в чем ошибки. #include <iostream> using namespace std; double a1,a2,sum,razn,proiz,del,ost; char b;...

простой калькулятор
Помогите разобраться, почему он не выполняет вычисления? <?php // Функция вывода формы ввода function show_form() { echo...

Простой калькулятор
Здравствуйте! Мне необходимо доработать калькулятор подсчета объёма пиломатериала и его стоимости. Необходимо, чтобы результат выводился не...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru