Novikova
?>

Решить . дана последовательность от 1 до 30 слов. напечатать: все слова в алфавитном порядке.

Информатика

Ответы

vipteatr
//Pascal ABC.NET v3.0 сборка 1111

Const
 n=30;

 type
 tys=array[1..n] of string;

Var
 ars:tys;
 i,j:integer;
 s:string;

 procedure sorts(var ars:tys;n1:integer);
Var
 i,j:integer;
 c:string;
begin
 for i:=1 to n1-1 do
  for j:=i to n1 do
   if ars[i]>ars[j] then
    begin
     c:=ars[i];
     ars[i]:=ars[j];
     ars[j]:=c;
    end;
end;
   begin
 readln(s);
 j:=1;
 while pos(' ',s)<>0 do
  begin
   for i:=1 to pos(' ',s) do
    ars[j]:=ars[j]+s[i];
   delete(s,1,pos(' ',s));
   inc(j);
  end;
  ars[j]:=s;
 sorts(ars,j+1);
 writeln('Result=');
 for i:=1 to n do  writeln(ars[i]);
end.

Пример ввода:
панамка пена пенал паста параллелепипед подражатель пинать явный полиморфизм приведение паскаль тетрадь разум
Пример вывода:
панамка параллелепипед паскаль паста пена пенал пинать подражатель полиморфизм приведение разумтетрадь явный 
Vera-zero281
А еще эту задачу можно решить вот так, но почему-то в школе обычно так не учат:

// PascalABC.NET 3.1, сборка 1172 от 19.02.2016
begin
  ReadlnString('->').ToWords.Sorted.Println
end.

Тестовое решение: (данные взяты у предыдущего автора):
-> панамка пена пенал паста параллелепипед подражатель пинать явный полиморфизм приведение паскаль тетрадь разум

панамка параллелепипед паскаль паста пена пенал пинать подражатель полиморфизм приведение разум тетрадь явный
Karlova1507
Зная количество бит в двоичной записи числа, можно посчитать количество бит в восьмеричной записи, так как из двоичной в восьмеричную систему счисления число можно привести группировкой по трем соседним разрядам, начиная с младших. Например, есть число 1100111. Сгруппируем его разряды: (1)(100)(111)=147 - в восьмеричной СС. Пусть количество разрядов 2-ичного числа равно n. Тогда количество разрядов восьмеричного числа будет n/3, деленное нацело и округленное вверх. n=7 => n/3=7/3. Округляем, будет 3.
a) 10111010. n=8 => 8/3 - 3 8-ричных разряда
б) 1001111000111, n=13 => 13/3 - 5 8-ричных разрядов
в) A18C. Сначала найдем n. Посмотрим, сколько значащих разрядов у старшей цифры. A=1010 - 4 разряда. У остальных цифр по 4 разряда всегда. Поэтому n=3*4+4=16 => 16/3 - 6 8-ричных разрядов.
г) 1375BE.
1=1 : 1 разряд => n=5*4+1=21 => 21/3 - 7 8-ричных разрядов
Kotvitskii
Pascalabc.net 3.4.0, сборка 1675 от 12.06.2018 внимание! если программа не работает, обновите версию! procedure println(self: array of real); extensionmethod; begin   self.batch(5).foreach(s->           begin foreach var p in s do write(p: 15: 10); writeln end);   writeln(min(15*(self.count div 2),38)*'- ') end; begin   var m: =arrgen(readinteger('n='),i-> cos(i),1); m.println;   var (a,b): =readreal2('введите границы a b: ');   writeln('число элементов на интервале [',a,',',b,'] равно ',       m.where(t-> t.between(a,);   write('сумма элементов, расположенных после максимального, равна ');   var imax: =m.indexmax;   (m? [imax+1: ].sum).println;   writeln('элементы, по убыванию модулей');   m: =m.orderbydescending(t-> abs(; m.println; end.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Решить . дана последовательность от 1 до 30 слов. напечатать: все слова в алфавитном порядке.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Малыхин Валерьевна621
kreon1
samsakovs7757
Viktoriya
vik-2202
Смирнов-Оськина
marimelons795
For i := 5 to 15 do write('*');
ovalenceva77
Dushko
aci2003
Сергеевна-Иван1045
milo4ka26
keshka12719
yaart-klementiev29
mayorovmisc6