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

Алгоритм Брезенхема для побудови кола на python

👇
Открыть все ответы
Ответ:
mayer3
mayer3
04.08.2020
Например так

Program Name_1;
var
name1, name2, name3, probel, dot: string;
number: integer;
begin
name1 := 'Ivanov_Ivan_Xvanovic';
probel := '_';
dot := '.';
number := Pos(probel, name1);
Writeln(number);
Writeln(name1);
{Delete(name1, number+2, 60);}

name2:=name1;
name3:=name1;

{Вырезаем имя}
Delete(name1, number, 60);

Delete(name2, 1, number); {сформировали 1й инициал}
Delete(name2, 2, 60);

Delete(name3, 1, number); {формируем 2й инициал}
number := Pos(probel, name3);
Delete(name3, 1, number);
Delete(name3, 2, 60);

Writeln('Ваши инициалы: ',name1,' ', name2, dot, ' ', name3, dot);
Readln();
end.

Поясню, у меня с кирилицей иногда чудит, поэтому перешел на латиницу, ну и поменял
букву в отчестве, Чтоб быть уверенным, что вырезан именно 2й инициал, а не повторно 1й, они ж одинаковые были.
При отладке пробел в строке заменял подчеркиванием, чтобы четко видеть, что режет программа.

Что нужно дописать в программе, что бы при вводе иванов иван иванович в ответе было иванов и.и., пок
4,7(99 оценок)
Ответ:
kristinashevku1
kristinashevku1
04.08.2020
Поскольку к элементам третьего столбца массива можно обращаться, как B[i,3], достаточно использовать цикл по строкам.
Для просмотра только четных строк массива достаточно начать со второй и менять номер строки с шагом 2.

const
  n = 6;
var
  b:array[1..n,1..n] of integer;
  i,j,s: integer;
begin
  Randomize;
  Writeln('Исходный массив');
  for i := 1 to n do
  begin
    for j := 1 to n do
    begin
      b[i,j]:=Random(131)-65;
      Write(b[i,j]:4)
    end;
    Writeln
  end;
  { задание 1 }
  s:=0;
  for i:=1 to n do
    if b[i,3]>0 then s:=s+b[i,3];
  Writeln('Значение найденной суммы: ',s);
  { задание 2 }
  i:=2;
  while i<=n do begin
    for j:=1 to n do
      if b[i,j]<0 then b[i,j]:=0;
    i:=i+2
  end;
  Writeln('Результирующий массив');
  for i:=1 to n do
  begin
    for j:=1 to n do Write(b[i,j]:4);
    Writeln
  end
end.

Тестовое решение:
Исходный массив
   1 -28 -22 -23 -15 -35
 -34 -44  57  43  33  62
  56   5  58 -32  -6 -52
  24 -15 -54 -45  41  32
  40  31 -31  28 -31  46
   7  31  56 -16 -62 -52
Значение найденной суммы: 171
Результирующий массив
   1 -28 -22 -23 -15 -35
   0   0  57  43  33  62
  56   5  58 -32  -6 -52
  24   0   0   0  41  32
  40  31 -31  28 -31  46
   7  31  56   0   0   0
4,6(19 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ