Для начала поясню что значат * и ? в маске. *-это последовательность символов, то есть любое количество символов. От 0 до бесконечности. Нам не важно что это за символы важен сам факт их существования или не существования. ?-это только один символ. Опять же, не важно какой, главное, чтобы он был там. Первая маска: A?B*.*C?*. Её можно интерпретировать как A[любой символ]B[последовательность символов или ничего]. [последовательность символов или ничего]C[любой символ] [последовательность символов или ничего]. Под такие условия подходят 5 файлов, которые переходят в каталог friends: ABBCBD.CDDBA ACBDC.ACBA AABBCCDD.DDCCD ACBCACD.AABBCCDD ADBCCAD.CADABC Почему не подходят остальные? ABDCC.ACBDA – нет символа в начале между A и B. BABCDA.ABCD - нет символа A в начале. AABACADA?CDBDADCB – нет точки. Следующая маска: *B?C*.??*D*. На человеческий: [любой символ] B] [последовательность символов или ничего]C[любой символ]. [любой символ] [любой символ] [последовательность символов или ничего]D [последовательность символов или ничего] Результат – 3 файла в папке family : ABBCBD.CDDBA AABBCCDD.DDCCD ADBCCAD.CADABC Остальные: ACBCACD.AABBCCDD – после единственной B сразу идёт C; ACBDC.ACBA – после точки нет D. ответ: ABBCBD.CDDBA AABBCCDD.DDCCD ADBCCAD.CADABC
// с циклом while var s,i:integer; begin i:=100; while i<=999 do begin if i mod 77 = 0 then s:=s+i; i:=i+1; end; writeln('Сумма трехзначных кратных 77: ',s); end.
Первая маска: A?B*.*C?*. Её можно интерпретировать как A[любой символ]B[последовательность символов или ничего]. [последовательность символов или ничего]C[любой символ] [последовательность символов или ничего].
Под такие условия подходят 5 файлов, которые переходят в каталог friends:
ABBCBD.CDDBA
ACBDC.ACBA
AABBCCDD.DDCCD
ACBCACD.AABBCCDD
ADBCCAD.CADABC
Почему не подходят остальные? ABDCC.ACBDA – нет символа в начале между A и B. BABCDA.ABCD - нет символа A в начале. AABACADA?CDBDADCB – нет точки.
Следующая маска: *B?C*.??*D*. На человеческий: [любой символ] B] [последовательность символов или ничего]C[любой символ]. [любой символ] [любой символ] [последовательность символов или ничего]D [последовательность символов или ничего]
Результат – 3 файла в папке family :
ABBCBD.CDDBA
AABBCCDD.DDCCD
ADBCCAD.CADABC
Остальные: ACBCACD.AABBCCDD – после единственной B сразу идёт C; ACBDC.ACBA – после точки нет D.
ответ:
ABBCBD.CDDBA
AABBCCDD.DDCCD
ADBCCAD.CADABC
//c циклом for
var s,i:integer;
begin
for i:=100 to 999 do
if i mod 77 = 0 then s:=s+i;
writeln('Сумма трехзначных кратных 77: ',s);
end.
Тестовое решение:
Сумма трехзначных кратных 77: 5929
// с циклом while
var s,i:integer;
begin
i:=100;
while i<=999 do begin
if i mod 77 = 0 then s:=s+i;
i:=i+1;
end;
writeln('Сумма трехзначных кратных 77: ',s);
end.