М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
ussr9989
ussr9989
01.09.2022 22:15 •  Информатика

Пользователь вводит строку с числами. напишите программу которая выведет все числа, присутствующие в строке, а также выведет максимальное и минимальное число. числом является любая последовательность цифр. если между двумя числами находится знак операции – результатом будет результат вычисления операции. пример: если дана строка: 123_2*14ghfg003sad15/2dasdasd8.10 программа должна вывести: numbers: 123 28 3 7 8 10 max: 123 min: 3 на java.

👇
Ответ:
Алина050913
Алина050913
01.09.2022
Import java.util.*;
import java.util.regex.*;
import java.lang.*;
import java.io.*;

class IntInStr
{
public static void main (String[] args) {
try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String string;
string = br.readLine();
String[] parts = string.split("[^\\d+\\-*/]+");
Vector<Integer> nums = new Vector<Integer>();
for(String part : parts) {
Matcher isnum = Pattern.compile("^\\d+$").matcher(part);
Matcher isnumop = Pattern.compile("^(\\d+)([+*/-])(\\d+)$").matcher(part);
if (isnum.matches()) {
int ipart = Integer.parseInt(part);
nums.add(ipart);
}
if (isnumop.matches()) {
int l = Integer.parseInt(isnumop.group(1)),
r = Integer.parseInt(isnumop.group(3)),
res;
String operation = isnumop.group(2);
switch(operation) {
case "+":
res = l + r;
break;
case "-":
res = l - r;
break;
case "*":
res = l * r;
break;
case "/":
res = l / r;
break;
default:
throw new ArithmeticException("token parse error");
}
nums.add(res);
}
}
int min = nums.get(0), max = nums.get(0);
System.out.println("Numbers:");
for (int n : nums) {
System.out.println(n);
if (n > max) {
max = n;
}
if (n < min) {
min = n;
}
}
System.out.format("Max: %d%nMin: %d%n", max, min);
} catch(Exception e) {
System.out.println(e.getMessage());
}
}
}
4,6(51 оценок)
Открыть все ответы
Ответ:
AlisaBust
AlisaBust
01.09.2022

По структуре алгоритмы разделяют на линейные, разветвляющиеся и циклические. Линейными называют алгоритмы, в которых операции выполняются последовательно одна за другой, в естественном и единственном порядке следования. В таких алгоритмах все блоки имеют последовательное соединение логической связью передачи информационных потоков.Циклический алгоритм – описание действий, которые должны повторяться указанное число раз или пока не выполнено заданное условие.Перечень повторяющихся действий называют телом цикла.

4,5(6 оценок)
Ответ:
MariKharlova
MariKharlova
01.09.2022

1) 1000 байт; 2) 2,197 КБ

Объяснение:

1) Алфавит мощностью 32, т.е. каждый символ кодируется log2(32) = 5 битами

На экране 20 * 80 = 1600 символов

Поскольку 1 символ = 5 бит

Размер текста на экране: 1600 * 5 = 8000 бит

Поскольку 1 байт = 8 бит

8000 / 8 = 1000 байт

Результат: 1000 байт

2) Размер изображения 180 х 100 точек, следовательно 180 * 100 = 18000 точек

2 градации цвета (чёрный, белый) = 1 бит

18000 точек = 18000 бит

18000 бит в байтах = 18000 / 8 = 2250 байт

2250 байт в КБ = 2250 / 1024 = 2,197 КБ

4,6(35 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ