Блок-схема дана во вложении
// PascalABC.NET 3.1, сборка 1172 от 19.02.2016
begin
var x:=ReadlnString('Введите слово Х:');
var y:=ReadlnString('Введите слово Y:');
var Good:=True;
for var i:=1 to y.Length do begin
var p:=Pos(y[i],x);
if p>0 then Delete(x,p,1)
else begin Good:=False; Break end
end;
if Good then
Writeln('Можно составить ',y)
else
Writeln('Нельзя составить ',y)
end.
Тестовое решение:
Введите слово Х: образование
Введите слово Y: название
Нельзя составить название
Введите слово Х: образование
Введите слово Y: барон
Можно составить барон
Используем закон де Моргана и закон двойного отрицания.
Решение во вложении.
Var a,b,c,d,m,n:real;
begin
writeln('Введите размеры комнаты (a,b)');
readln(a,b);
writeln('Введите размеры окна (с,d)');
readln(c,d);
writeln('Введите размеры двери (m,n)');
readln(m,n);
writeln('Площадь для оклейки: ',a*b-c*d-m*n);
end.
По-строчно перебираем элементы матрицы (внешний цикл отвечает за переход к новой строке, счетчик - первый индекс элементов).Во внешнем цикле перед внутренним присваиваем переменной для суммы значение 0. В ней будет накапливаться сумма элементов текущей строки, элементы которой перебираются во внутреннем цикле.После внутреннего цикла выводим значение переменной-суммы на экран.