Const
z=10;
var
a:array[1..10,1..10] of char;
b:array[1..10] of char;
str:string[10];
i,j,n,m:integer;
P:set of char;
f1:boolean;
begin
p:=['0'..'9','<'..'>'];
writeln('vvod matricu');
writeln('vvedite kolvo strok matricu-');
readln(m);
for i:=1 to m do
for j:=1 to z do
begin
write('a[',i,',',j,']-');
readln(a[i,j]);
end;
for i:=1 to m do
begin
writeln('vvedite stroku');
readln(str);
n:=length(str);
for j:=1 to n do
b[j]:=str[j];
for j:=1 to z do
a[i,j]:=b[j];
end;
F1:=true;
if a[i,j] in p then
writeln('est') else writeln('Net');
readln;
end.
Const
z=10;
var
a:array[1..10,1..100] of char;
str:string[100];
i,j,n,m:integer;
f1:boolean;
p:set of char;
begin
f1:=false;
p:=['1'..'9'];
writeln('vvedite kolvo strok');
readln(m);
for i:=1 to m do
begin
writeln('vvedite stroku ravnuju 10 simvolam');
readln(str);
n:=length(str);
for j:=1 to n do
a[i,j]:=str[j];
end;
writeln(' ');
for i:=1 to m do
begin
for j:=1 to n do
write(a[i,j],' ');
writeln;
end;
for i:=1 to 3 do
for j:=1 to n do
begin
if a[i,j] in p then
f1:=true else
f1:=false;
end;
if f1 then writeln('est') else writeln('net');
readln;
end.
type
char_set = set of char;
var
arr_of_set = array[1 .. 10] of char_set;
begin
for i := 1 to 10 do begin
arr_of_set[i] := [];
write('строка №', i, ' -> '); readln(s);
for j := 1 to length(s) do include(arr_of_set[i], s[j]);
end;
{
Все, множества заполнены, теперь надо просто пройтись по ним, и подсчитать,
в скольких из множеств выполняется условие:
arr_of_set[i] * ['0' .. '9', '<', '=', '>'] <> []
}
end.
Const
z=10;
var
a:array[1..10,1..100] of char;
str:string[100];
i,j,n,m:integer;
f1:boolean;
p:set of char;
begin
f1:=false;
p:=['1'..'9'];
writeln('vvedite kolvo strok');
readln(m); {итак, m - это количество задействованных строк. хорошо бы проверять, что m<=10... ну ладно}
for i:=1 to m do
begin
writeln('vvedite stroku ravnuju 10 simvolam'); {в чем глубокий смысл этой просьбы? зачем выделяем 100 ячеек под строку, если ее длина равна 10?}
readln(str);
n:=length(str); {просили ввести строку длины 10, а теперь определяем ее длину. не верим пользователю?}
for j:=1 to n do
a[i,j]:=str[j];
end;
{вот в этом месте n равно длине последней строки, m равно количеству строк}
writeln(' ');
for i:=1 to m do {до m, логично}
begin
for j:=1 to n do {почему до n? а если какая-то строка короче или длиннее последней?}
write(a[i,j],' ');
writeln;
end;
for i:=1 to 3 do {откуда берется 3? это что-то новенькое...}
for j:=1 to n do {опять же - n}
begin
if a[i,j] in p then {типа f1:=a[i,j] in p? то есть только один символ тебя интересует?}
f1:=true else
f1:=false;
end;
if f1 then writeln('est') else writeln('net'); {если бы ты расставил отступы, то увидел бы, что это не в цикле... или ты и не хочешь писать для каждой строки?}
readln;
end.
for i:=1 to m do
begin
f1:=false; {считаем, что строка без этих символов}
for j:=1 to [подумай, как определять этот индекс] do
begin
if a[i,j] in p then
f1:=true;
end;
end;
for i:=1 to m do
begin
f1:=false; {считаем, что строка без этих символов}
for j:=1 to [подумай, как определять этот индекс] do
f1:=f1 or (a[i,j] in p) ;
end;
type
char_set = set of char;
var
arr_of_set: array[1 .. 10] of char_set;
s: string;
i, j, n, count: integer;
begin
write('Число строк -> '); readln(n);
for i := 1 to n do begin
arr_of_set[i] := [];
write('Строка №', i, ' -> '); readln(s);
for j := 1 to length(s) do include(arr_of_set[i], s[j]);
end;
{
Все, множества заполнены, теперь надо просто пройтись по ним, и подсчитать,
в скольких из множеств выполняется условие:
arr_of_set[i] * ['0' .. '9', '<', '=', '>'] <> []
}
count := 0;
for i := 1 to n do { <--- Проходим по всем множествам }
if arr_of_set[i] * ['0' .. '9', '<', '=', '>'] <> [] then inc(count);
{
и если приведенное выше условие выполняется, значит
в строке был хотя бы один символ из "цифр" и "операций
сравнения" (для доп. информации - читай тему "Множества",
в FAQ-е), то увеличиваем счетчик ...
}
{
Проверяем число строк, в которых встретились заданные символы.
Если больше 3 - то Да, иначе - Нет
}
if count >= 3 then writeln('Yes')
else writeln('No')
end.