если для этого нужно написать программу, то смотри(паскаль):
uses crt; var a,b,c,d,p,p1: real; beginclrscr; write('длина вырезки '); read(a); write('ширина вырезки '); read(b); p: =2*(a+b); write('длина сечения бруска '); read(c); write('ширина сечения бруска '); read(d); p1: =2*(c+d);
writeln;
if (p=p1) thenbeginif (c=a) or (c=b) then write('подойдет')else write('не подойдет'); endelse write('не подойдет'); end.
ответ:
самый заезженный пример – факторизация (разложение на простые множители) целых чисел [1]. некто взял простые числа x и y, сообщил вам их произведение x*y. вам нужно выполнить обратную операцию: зная только x*y, найти эти x и y. например, вам сообщают число 143, а вы в ответ должны назвать 11 и 13, потому что 11*13 = 143.
пока никто не придумал алгоритм, который позволил бы классическому компьютеру раскладывать числа на простые множители за разумное время. на сегодняшний день рекордное достижение – разложение 768-битного (или 232-значного) числа на два простых 384-битных (116-значных) множителя, на что ушло несколько лет работы коллектива исследователей [2].
суммарно все процессоры, задействованные в переборе, выполнили примерно 10^20 (100 квинтиллионов) операций. если бы вы попробовали повторить эти вычисления на одноядерном процессоре с частотой 2.2 ггц, вам пришлось бы ждать ответа примерно 2000 лет.
Поделитесь своими знаниями, ответьте на вопрос:
program denisden4ik; uses crt; var a1,a2,b1,b2: real; begin writeln('введите размеры вырезки '); write('ширина '); read(a1); write('длина '); read(a2); writeln('введите размеры сечения бруска '); write('ширина '); read(b1); write('длина '); read(b2); writeln(); if ((a1=b1) and (a2=b2)) or ((a1=b2) and (a2=b1)) then writeln('этот брусок подойдет') else writeln('этот брусок не подойдет'); end.