Pascal(задача) помогите((
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Pascal(задача) помогите(( - 2012-01-12 15:41:19.866666
|
|
|
shinejke
Сообщений: 1
Оценки: 0
Присоединился: 2012-01-12 15:38:00.663333
|
Помогите с задачей очень прошу вас((( Написать программу которая проверяет пройдёт ли кирпич (стороны a,b,c) в отверстие со сторонами (e,d). в кирпиче есть:длина,ширина,высота (a,b,c) в отверстии:высота и ширина (d,e). (В программе можно использовать:if,then,else,and,or(проходили только их)). вот мое начало.. (думаю не правильно..) quote:
program kurpuch; var a,b,c,d,e:integer; begin readln(a); writeln('Введите ширину Кирпича'); readln(b); writeln('Введите длину Кирпича'); readln©; writeln('Введите высоту Кирпича'); readln(d); writeln('Введите высоту Отверстия'); readln(e); writeln('Введите ширину Отверстия'); потом уже нужно условие… (if) помогите пожалуйста кто чем сможет(
|
|
|
RE: Pascal(задача) помогите(( - 2012-01-12 16:12:33.050000
|
|
|
unknownproject
Сообщений: 56
Оценки: 0
Присоединился: 2011-09-01 17:35:19.886666
|
if a=e and c=d //Если ширина кирпича равна ширине отверстия и высота кирпича равна высоте отверстия then //тогда begin writeln('Кирпич поместился в отверстие') //Успех end else //иначе begin writeln('Размеры кирпича не совпадают с размерами отверстия'); //неудача end; Длина понятное дело, что не важна, потому что у отверстия известна высота и ширина, даже если кирпич торчит, то он в нее пролазит ((= Второй вариант: if a=e and b=e and c=d //Если ширина кирпича равна ширине отверстия или длина кирпича равна ширине отверстия (кирпич квадратный) и высота кирпича равна высоте отверстия then //тогда begin writeln('Кирпич поместился в отверстие') //Успех end else //иначе begin writeln('Размеры кирпича не совпадают с размерами отверстия'); //неудача end; А тут длина = ширине. Надеюсь, что я прав, если что, то поправь переменные в условии, ибо в условии задачи и коде у тебя некоторые различия (((= Upd.Заключил в begin..end вывод сообщений (хотя это и не обязательно).
|
|
|
RE: Pascal(задача) помогите(( - 2012-01-12 18:47:54.510000
|
|
|
_SaZ_
Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
|
quote:
ORIGINAL: unknownproject Надеюсь, что я прав, если что, то поправь переменные в условии, ибо в условии задачи и коде у тебя некоторые различия (((= Не прав, так как размеры стороны кирпича могут и не совпадать с размерами отверстия, а могут быть просто меньше - в этом случае кирпич тоже поместится в отверстие. Автору: составь для начала условие, при котором кирпич пройдёт в отверстие, словами - а потом уже начинай программировать это условие.
|
|
|
RE: Pascal(задача) помогите(( - 2012-01-12 19:04:31.560000
|
|
|
_SaZ_
Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
|
Как-то так, чтобы по-простому:
var
a, b, c, d, e, t :integer;
s1, s2 :integer;
isOk :boolean;
procedure lswap( var v1, v2 :integer );
var
t :integer;
begin
if v1 > v2 then
begin
t := v1;
v1 := v2;
v2 := t;
end;
end;
function compare( v1, v2, d, e :integer ) :boolean;
begin
lswap( v1, v2 );
compare := ( s1 <= d ) and ( s2 <= e );
end;
begin
readln( a, b, c, d, e );
lswap( d, e );
isOk := compare( a, b, d, e ) or compare( b, c, d, e ) or compare( a, c, d, e );
if isOk then
writeln( 'Success' )
else
writeln( 'Fail' );
end.
|
|
|
|
|