М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Csgopro1
Csgopro1
11.09.2022 23:42 •  Информатика

21.05.2019 sdamgia ru/test? id=76026вариант n9 76026151. 3 n9 1157между населёнными пунктами а, в, с, d построены дороги, протяженность которых (вкилометрах) в таблице.і7seatsideопределите длину кратчайшего пути между пунктами дис. передвигаться можно только подорогам, протяжённость которых указана в таблице.1) 42) 53) 62. з no 424между населёнными пунктами a, b, c, d, e, f построены дороги, протяжённость которых -дена в таблице: ​

👇
Открыть все ответы
Ответ:
Yoss12
Yoss12
11.09.2022
Var s,st: string;
    a: array[1..255] of integer;
    i: integer;    
begin
  write('строка: ');  readln(s);
  for i:=1 to 255 do a[i]:=0;
  for i:=1 to length(s) do inc(a[ord(s[i])]);
  st:='';
  for i:=1 to length(s) do
    if ((a[ord(s[i])]>=2) and
       (s[i] in ['а'..'я']))  then continue
    else st:=st+s[i];
  writeln('новая строка: ',st);
end.

строка: Это строка для проверки.
новая строка: Э са для пвеи.

Если нужно, чтобы не различались прописные и строчные буквы, то другой вариант программы:

var s: string;
    a: array[1..255] of integer;
    i,j: integer;    
begin
  write('строка: ');  readln(s);
  for i:=1 to 255 do a[i]:=0;
  for i:=1 to length(s) do
  if ord(s[i])>32 then
  begin
    inc(a[ord(s[i])]);
    if s[i] in ['а'..'я'] then inc(a[ord(UpperCase(s[i]))])
    else if s[i] in ['А'..'Я'] then inc(a[ord(LowerCase(s[i]))]);
  end;  
  j:=0;
  for i:=1 to length(s) do
  if (a[ord(s[i])]>=2) then continue
  else 
  begin
    inc(j);
    s[j]:=s[i];
  end;  
  delete(s,j+1,length(s)-j);
  writeln('новая строка: ',s);
end.
4,5(95 оценок)
Ответ:
Just0a0reader
Just0a0reader
11.09.2022
Лучше писать результат не в тот же файл, а в другой: при составлении регулярных выражений без достаточного опыта можно легко ошибиться.

uses
  System.Text.RegularExpressions;

const
  CRLF = #13#10;

var
  s, sbig: string;
  fin, fout: Text;

begin
  Assign(fin, 'MyIn.txt');
  Reset(fin);
  sbig := '';
  while not Eof(fin) do
  begin
    Readln(fin, s);
    sbig := sbig + s + CRLF
  end;
  Close(fin);
  {пример - уладить подстроки, начиная с "http:" и до первого пробела,
  причем внутри подстроки может встретиться переход на новую строчку.
  Используется шаблон '\bhttp:\S+' - подробности: регулярные выражения}
  sbig:=RegEx.Replace(sbig, '\bhttp:\S+', '', RegexOptions.Multiline);
  Assign(fout, 'MyOut.txt');
  Rewrite(fout);
  Write(fout, sbig);
  Close(fout);
  Writeln('Конец работы');
end.
4,7(19 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ