Skip to content

Wrtpoh/Java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Чернова Полина ИТ-2 Лабораторная №1

Задание 1

Задача 1

Дробная часть.

Дана сигнатура метода: public double fraction (double x); Необходимо реализовать метод таким образом, чтобы он возвращал только дробную часть числа х. Подсказка: вещественное число может быть преобразовано к целому путем отбрасывания дробной части. Пример: x=5,25 результат: 0,25

Алгоритм решения

Java: Метод для получения дробной части числа

В этой задаче реализован метод fraction(double x), который возвращает только дробную часть переданного вещественного числа x.

Например:

  • Вход: 5.25 → Результат: 0.25
  • Вход: -5.25 → Результат: 0.75
  • Вход: 3.0 → Результат: 0.0

Метод корректно обрабатывает как положительные, так и отрицательные числа.

Задача 3

Букву в число.

Дана сигнатура метода: public int charToNum (char x); Метод принимает символ х, который представляет собой один из “0 1 2 3 4 5 6 7 8 9”. Необходимо реализовать метод таким образом, чтобы он преобразовывал символ в соответствующее число. Подсказка: код символа ‘0’ — это число 48. Пример: x=’3’ результат: 3

Алгоритм решения

Реализован метод public int charToNum (char x), который принимает на вход один символцифру от '0' до '9', и возвращает соответствующее целое число (int). Метод корректно обрабатывает ввод и выдаёт ошибку, если переданный символ не является цифрой. В Java (и других языках) символы '0', '1', ..., '9' хранятся как числовые коды в таблице ASCII, где у символа '0' - код 48 и по возрастанию до сомвола 9 = код 57.

Задача 5

Двузначное. Дана сигнатура метода: public bool is2Digits (int x); Необходимо реализовать метод таким образом, чтобы он принимал число x и возвращал true, если оно двузначное. Пример 1: x=32 результат: true Пример 2: x=516 результат: false

Алгоритм решения

Реализован метод public bool is2Digits (int x), который проверяет число на двузначность, проверяя диапазон, и выводит true, если число двузначное, или false в противном случае.

Задача 7

Диапазон. Дана сигнатура метода: public bool isInRange (int a, int b, int num); Метод принимает левую и правую границу (a и b) некоторого числового диапазона. Необходимо реализовать метод таким образом, чтобы он возвращал true, если num входит в указанный диапазон (включая границы). Обратите внимание, что отношение a и b заранее неизвестно (неясно кто из них больше, а кто меньше) Пример 1: a=5 b=1 num=3 результат: true Пример 2: a=2 b=15 num=33

Алгоритм решения

Реализован метод public bool isInRange, в котором изначально дается диапазон, но неизвестно, что больше a или b. В методе я определила минимальное и максимальное из двух значний,а затем сравнила их с числом num.

Задача 9

Равенство. Дана сигнатура метода: public bool isEqual(int a, int b, int c); Необходимо реализовать метод таким образом, чтобы он возвращал true, если все три полученных методом числа равны Пример 1: a=3 b=3 с=3 результат: true Пример 2: a=2 b=15 с=2 результат: false

Алгоритм решения

Реализован метод public bool isEqual, в котором нужно вывести true, если все значения равны, и false в противном случае. В методе сравниваются три числа, а затем в выводе вызывается метод и выводит true/false.

Задание 2

Задача 1

Текст задачи

Модуль числа. Дана сигнатура метода: public int abs (int x); Необходимо реализовать метод таким образом, чтобы он возвращал модуль числа х (если оно было положительным, то таким и остается, если он было отрицательным – то необходимо вернуть его без знака минус). Пример 1: x=5 результат: 5 Пример 2: x=-3 результат: 3

Алгоритм решения

Реализован метод public int abs, использовала библиотеку Math в методе и вазывала метод в выводе.

Задача 3

Текст задачи

Тридцать пять. Дана сигнатура метода: public bool is35 (int x); Необходимо реализовать метод таким образом, чтобы он возвращал true, если число x делится нацело на 3 или 5. При этом, если оно делится и на 3, и на 5, то вернуть надо false. Подсказка: оператор % позволяет получить остаток от деления. Пример 1: x=5 результат: true Пример 2: x=8 результат: false Пример 3: x=15 результат: false

Алгоритм решения

Реализован метод public bool is35. В методе я присвоила isThree все значения, которые делятся на 3, и isFive все значения, которые делятся на 5. boolean - это логическая переменная, которая имеет два значения true/false. Далее я проыерила условие, если делится и на 3, и на 5 - выводит false. Ну, или выводит true, если делится только на одно из значений.

Задача 5

Текст задачи

Тройной максимум. Дана сигнатура метода: public int max3 (int x, int y, int z); Необходимо реализовать метод таким образом, чтобы он возвращал максимальное из трех полученных методом чисел. Подсказка: идеальное решение включает всего две инструкции if и не содержит вложенных if. Пример 1: x=5 y=7 z=7 результат: 7 Пример 2: x=8 y=-1 z=4

Алгоритм решения

Метод max3 возвращает максимальное значение из трёх целых чисел.
Решение реализовано с использованием двух операторов if, без вложенных условий, как указано в задании.

Задача 7

Текст задачи

Двойная сумма. Дана сигнатура метода: public int sum2 (int x, int y); Необходимо реализовать метод таким образом, чтобы он возвращал сумму чисел x и y. Однако, если сумма попадает в диапазон от 10 до 19, то надо вернуть число 20. Пример 1: x=5 y=7 результат: 20 Пример 2: x=8 y=-1 результат: 7

Алгоритм решения

Метод sum2 возвращает сумму в соответствии с условием задачи. Сначала присвоила сумму новой переменной, а затем использовала условие.

Задача 9

Текст задачи

День недели. Дана сигнатура метода: public String day (int x); Метод принимает число x, обозначающее день недели. Необходимо реализовать метод таким образом, чтобы он возвращал строку, которая будет обозначать текущий день недели, где 1- это понедельник, а 7 – воскресенье. Если число не от 1 до 7 то верните текст “это не день недели”. Вместо if в данной задаче используйте switch. Пример: x=5 результат: “пятница”

Алгоритм решения

Метод day возвращает день недели и если цифра не в диапазоне от 1 до 7, то выводит "это не день недели". Использовала switch вместо if. switch — это управляющая конструкция, которая позволяет выполнить разные блоки кода в зависимости от значения переменной.

Задание 3

Задача 1

Текст задачи

Числа подряд. Дана сигнатура метода: public String listNums (int x); Необходимо реализовать метод таким образом, чтобы он возвращал строку, в которой будут записаны все числа от 0 до x (включительно). Пример: x=5 результат: “0 1 2 3 4 5”

Алгоритм решения

Метод listNums возвращает строку, содержащую все числа от 0 до x включительно, разделённые пробелами.
Если x меньше 0, метод возвращает пустую строку. StringBuilder(специальный класс в Java, который позволяет собирать данные). toString(превращает объект в обычную строку)

Задача 3

Текст задачи

Четные числа. Дана сигнатура метода: public String chet (int x); Необходимо реализовать метод таким образом, чтобы он возвращал строку, в которой будут записаны все четные числа от 0 до x (включительно). Подсказа для обеспечения качества кода: инструкцию if использовать не следует. Пример: x=9 результат: “0 2 4 6 8”

Алгоритм решения

Метод chet возвращает строку, содержащую четные числа от 0 до x, разделённые пробелами.
Если x меньше 0, метод возвращает пустую строку

Задача 5

Текст задачи

Длина числа. Дана сигнатура метода: public int numLen (long x); Необходимо реализовать метод таким образом, чтобы он возвращал количество знаков в числе x. Подсказка: Int у=123/10; // у будет иметь значение 12 Пример: x=12567 результат: 5

Алгоритм решения

Если x равен 0 → возвращаем 1, так как 0 состоит из одной цифры. Берём Math.abs(x), чтобы работать с отрицательными числами. В цикле while делим число на 10, пока оно больше 0. Считаем каждое деление → это и есть количество цифр. Возвращаем count.

Задача 7

Текст задачи

Квадрат. Дана сигнатура метода: public void square (int x); Необходимо реализовать метод таким образом, чтобы он выводил на экран квадрат из символов ‘*’ размером х, у которого х символов в ряд и х символов в высоту. Пример 1: x=2 результат: ** ** Пример 2: x=4 результат:



Алгоритм решения

Метод square(int x) выводит на экран квадрат из символов * размером x на x.
Каждая строка содержит x символов, и таких строк тоже x.

Метод не возвращает результат, а печатает его на экран с помощью System.out.print.

Задача 9

Текст задачи

Правый треугольник. Дана сигнатура метода: public void rightTriangle (int x); Необходимо реализовать метод таким образом, чтобы он выводил на экран треугольник из символов ‘’ у которого х символов в высоту, а количество символов в ряду совпадает с номером строки, при этом треугольник выровнен по правому краю. Подсказка: перед символами ‘’ следует выводить необходимое количество пробелов. Пример 1: x=3 результат: * **


Пример 2: x=4 результат: * **

Алгоритм решения

Метод rightTriangle(int x) выводит на экран правый прямоугольный треугольник из символов *, выровненный по правому краю. Высота и максимальная ширина треугольника равны x.

Каждая строка содержит сначала пробелы, затем звёздочки:

  • Количество пробелов = x - номер_строки
  • Количество звёздочек = номер_строки

Задание 4

Задача 1

Текст задачи

Поиск первого значения. Дана сигнатура метода: public int findFirst (int[] arr, int x); Необходимо реализовать метод таким образом, чтобы он возвращал индекс первого вхождения числа x в массив arr. Если число не входит в массив – возвращается -1. Пример: arr=[1,2,3,4,2,2,5]

Алгоритм решения

Метод findFirst(int[] arr, int x) выполняет поиск значения x в массиве arr и возвращает индекс первого вхождения этого значения. Если элемент x не найден, метод возвращает -1.

Задача 3

Текст задачи

Поиск максимального. Дана сигнатура метода: public int maxAbs (int[] arr); Необходимо реализовать метод таким образом, чтобы он возвращал наибольшее по модулю (то есть без учета знака) значение массива arr. Пример: arr=[1,-2,-7,4,2,2,5]

Алгоритм решения

Метод maxAbs(int[] arr) находит в массиве arr число с наибольшим модулем (без учёта знака) и возвращает его значение.
Например, если в массиве есть -7, он возвращает 7.

Задача 5

Текст задачи

Добавление массива в массив. Дана сигнатура метода: public int[] add (int[] arr, int[] ins, int pos); Необходимо реализовать метод таким образом, чтобы он возвращал новый массив, который будет содержать все элементы массива arr, однако в позицию pos будут вставлены значения массива ins. Пример: arr=[1,2,3,4,5] ins=[7,8,9] pos=3 результат: [1,2,3,7,8,9,4,5]

Алгоритм решения

Метод add(int[] arr, int[] ins, int pos) вставляет все элементы массива ins в массив arr, начиная с позиции pos, и возвращает новый массив.

Задача 7

Текст задачи

Возвратный реверс. Дана сигнатура метода: public int[] reverseBack (int[] arr); Необходимо реализовать метод таким образом, чтобы он возвращал новый массив, в котором значения массива arr записаны задом наперед. Пример: arr=[1,2,3,4,5] результат: [5,4,3,2,1]

Алгоритм решения

Метод reverseBack(int[] arr) создаёт и возвращает новый массив, в котором элементы исходного массива arr идут в обратном порядке.

Задача 9

Текст задачи

Все вхождения. Дана сигнатура метода: public int[] findAll (int[] arr, int x); Необходимо реализовать метод таким образом, чтобы он возвращал новый массив, в котором записаны индексы всех вхождений числа x в массив arr. Пример: arr=[1,2,3,8,2,2,9] x=2 результат: [1,4,5]

Алгоритм решения

Метод findAll(int[] arr, int x) возвращает новый массив, содержащий все индексы, по которым число x встречается в массиве arr.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages