Chuhnin195107364
?>

Дана последовательность из м чисел. все отрицательные среди них числа возвести в квадрат и найти их сумму. visual basics

Информатика

Ответы

stalker2201
Программа приложена файлом для Visual Basic for Applications

Ниже текст этой программы продублирован

Sub trans_sequence(ByVal M)'заполнение массива и создание преобразованной последовательности чисел  N = M  Dim mas()  ReDim mas(M)  Sg = ""  Sf = ""  Randomize  For i = 1 To M    mas(i) = Round((Rnd(100) - 0.5) * 100)    Sg = Sg + Str(mas(i))    If (mas(i) < 0) Then mas(i) = mas(i) * mas(i)    Sf = Sf + Str(mas(i))    If i <> M Then           Sg = Sg + ","       Sf = Sf + ","    End If  Next i        MsgBox "последовательность чисел " + Sg + Chr(10) + "преобразованная последовательность " + SfEnd Sub

Sub test()  trans_sequence (25)End Sub
foto5113161
Программу надо сформатировать и тогда её структура будет видна лучше.
А чтобы понять, как идет выполнение, в нужных точках ставим промежуточную выдачу - это называется "трассировкой".

var
  s, k: integer;
label
  met;
begin
  s:=-12;
  k:=90;
  Writeln('s=',s,', k=',k);
  s:=s+10;
  Writeln('s=',s);
met:
  Writeln('Метка met:');
  k:=k+10; Write('k=',k);
  if k<200 then s:=50 else s:=s+k;
  Writeln(', s=',s);
  if k<200 then goto met;
  Writeln('Результат: s=',s)
end.

Результат выполнения программы:
s=-12, k=90
s=-2
Метка met:
k=100, s=50
Метка met:
k=110, s=50
Метка met:
k=120, s=50
Метка met:
k=130, s=50
Метка met:
k=140, s=50
Метка met:
k=150, s=50
Метка met:
k=160, s=50
Метка met:
k=170, s=50
Метка met:
k=180, s=50
Метка met:
k=190, s=50
Метка met:
k=200, s=250
Результат: s=250
zloshop9

5

Объяснение:

Здесь также же петрушка,что и подобное задание, разница лишь в условии. Здесь перемещение должно происходить тогда, когда последняя цифра а[i] равняется всему числу а[0].массив такой:

8, 3, 16, 24, 35, 18, 4, 72, 8, 99, 44

И смена мест происходит не а0 с аi, а аi c a(i+1), т.е а0 никак не меняется.

Кароче, дашло до 18 при а5 и поменялся массив так:

8, 3, 16, 24, 35, 4, 18, 72, 8, 99, 44

Теперь смотрим: а6 тоже заканчивается на 8, значит трансформируем массив опять:

8, 3, 16, 24, 35, 4, 72, 18, 8, 99, 44

И опять он встал на нашем пути. И так будет до конца массива. И это случится действительно 5 раз.

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

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

Дана последовательность из м чисел. все отрицательные среди них числа возвести в квадрат и найти их сумму. visual basics
Ваше имя (никнейм)*
Email*
Комментарий*

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

алексеевич810
ainetdinovsnab
valerii_Georgievna915
Yurevich1243
Ryazanova1575
Pautova1119
Алексеевич620
Chitaia
Antonov-Elena
Tsevich333639
Pavel_Olegovna1601
inainainainaina0073
Павел_Перелыгин
Shishkinna2002
Vkois56