Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Решите задачи ЛЁГКИМ способом пж, через цикл while

Мерлин Монро Ученик (59), на голосовании 1 день назад
программа IntelliJ IDEA Community Edition 2017 (Java) именно эта программа!!!
Голосование за лучший ответ
♡$ⴎG@r₱u₷sყ♡ Искусственный Интеллект (253765) 1 месяц назад
Я помогу решить эти задачи с использованием цикла while в Java. Вот решения для каждой задачи:

1. Числа от 10 до 2000 с цифрами 2 и 5:
  
public class Task1 {
public static void main(String[] args) {
int num = 10;
while (num <= 2000) {
String numStr = String.valueOf(num);
if (numStr.contains("2") && numStr.contains("5")) {
System.out.print(num + " ");
}
num++;
}
}
}


2. Числа меньше 2000 только из нечетных цифр:
 
public class Task2 {
public static void main(String[] args) {
int num = 1;
while (num < 2000) {
String numStr = String.valueOf(num);
boolean onlyOdd = true;

int i = 0;
while (i < numStr.length()) {
int digit = numStr.charAt(i) - '0';
if (digit % 2 == 0) {
onlyOdd = false;
break;
}
i++;
}

if (onlyOdd) {
System.out.print(num + " ");
}
num++;
}
}
}


3. Количество делителей для чисел от A до B:
  
public class Task3 {
public static void main(String[] args) {
int A = 1; // Начало промежутка
int B = 10; // Конец промежутка

int current = A;
while (current <= B) {
int divisors = 0;
int i = 1;

while (i <= current) {
if (current % i == 0) {
divisors++;
}
i++;
}

System.out.println("Число " + current + " имеет " + divisors + " делителей");
current++;
}
}
}


В третьей задаче вы можете изменить значения A и B на нужные вам числа.

Все программы используют цикл while и достаточно просты для понимания. Они готовы к использованию в IntelliJ IDEA Community Edition 2017.

Пояснения к решениям:
1. Первая программа преобразует число в строку и проверяет наличие цифр 2 и 5.
2. Вторая программа проверяет каждую цифру числа на нечетность.
3. Третья программа считает количество делителей для каждого числа в заданном диапазоне.
Мерлин МонроУченик (59) 1 месяц назад
спасибо огромное!!!!!!!!!
♡$ⴎG@r₱u₷sყ♡ Искусственный Интеллект (253765) Мерлин Монро, незашо ?
Мерлин МонроУченик (59) 1 месяц назад
восьмая строчка где: String numStr = String.valueOf(a);
♡$ⴎG@r₱u₷sყ♡ Искусственный Интеллект (253765) Мерлин Монро, Есть несколько способов заменить эту строку. Вот самые простые варианты: 1. Самый простой способ: ```java String numStr = "" + a; ``` 2. Или можно использовать Integer.toString(): ```java String numStr = Integer.toString(a); ``` Оба варианта дадут тот же результат, что и String.valueOf(a). Первый вариант (с "" + a) является самым простым и понятным для начинающих программистов. В вашем коде строка будет выглядеть так: ```java while (a <= 2000) { String numStr = "" + a; // Вот замена if (numStr.contains("2") && numStr.contains("5")) { System.out.print(a + " "); } a++; } ```
Мерлин МонроУченик (59) 1 месяц назад
ну я имею ввиду что мы не пишем String
♡$ⴎG@r₱u₷sყ♡ Искусственный Интеллект (253765) Мерлин Монро, А, понял! Нужно использовать способ с делением на 10, как вы это делали на уроке для получения и проверки цифр числа. Вот исправленное решение первой задачи: import java.util.Scanner; public class Main { public static void main(String[] args) { int a = 10; while (a <= 2000) { int temp = a; boolean has2 = false; boolean has5 = false; while (temp > 0) { int digit = temp % 10; if (digit == 2) has2 = true; if (digit == 5) has5 = true; temp = temp / 10; } if (has2 && has5) { System.out.print(a + " "); } a++; } } }
Похожие вопросы