В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
annyta290802p012i5
annyta290802p012i5
02.05.2023 18:49 •  Информатика

Дано n - количество троек чисел. Затем вводятся сами тройки чисел, т.е. в каждой из n строк вводится по три натуральных числа. Выясните, какое количество троек чисел могут являться сторонами равнобедренного треугольника. Подсказка. В прямоугольном треугольнике две стороны должны быть равны. Не забудьте также проверить, а треугольник ли это, вообще. В треугольнике любая сторона меньше суммы двух других.

Решить двумя , массивом, без массива

Показать ответ
Ответ:
Elaria1
Elaria1
14.02.2022 11:10

Язык: Java

import java.math.BigInteger;

import java.util.ArrayList;

import java.util.Scanner;

public class Main {

   public static void main(String[] args){

       Scanner input = new Scanner(System.in);

       int n = input.nextInt();

       ArrayList<PointHolder> data = new ArrayList<>();

       System.out.println("Init for "+n);

       for(int i =0;i<n;i++){

           input = new Scanner(System.in);

           String inp = input.nextLine();

           System.out.println("Got: "+inp);

           data.add(new PointHolder(new BigInteger(inp.split(" ")[0]),

                   new BigInteger(inp.split(" ")[1]),

                   new BigInteger(inp.split(" ")[2])));

       }

       for(PointHolder holder:data){

           if(canExists(holder)){

               System.out.println("Может существовать равнобедренный треугольник со сторонами: "+holder.one + " "+holder.two+" "+holder.three);

           }

       }

   }

   public static boolean canExists(PointHolder holder){

       if(holder.one.equals(holder.two) || holder.one.equals(holder.three) || holder.two.equals(holder.three)){

           long o = holder.one.longValue();

           long t = holder.two.longValue();

           long th = holder.three.longValue();

           return (o<t+th) && (t < o+th) && (th < o+t);

       }else{

           return false;

       }

   }

}

class PointHolder{

   BigInteger one;

   BigInteger two;

   BigInteger three;

   PointHolder(BigInteger o,BigInteger t,BigInteger th){

       one=o;

       two=t;

       three=th;

   }

}

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота