Сумма положительных элементов - VB

Узнай цену своей работы

Формулировка задачи:

Здравствуйте) Помогите, пожалуйста, переделать код на Visual Basic..не знаком с этим языком..так бы хоть разобрался. А задание следующее: найти сумму положительных элементов, расп-ых впереди первого отриц-ого элемента
Листинг программы
  1. var
  2. Form1: TForm1;
  3. massiv: array of integer;
  4. n:integer;
  5. implementation
  6. {$R *.dfm}
  7. procedure TForm1.Button1Click(Sender: TObject);
  8. begin
  9. ListBox1.Items.Clear;
  10. n:=strtoInt(InputBox('Размер массива', 'Введите размер массива','0'));
  11. SetLength(massiv,n); //установка размера массива
  12. end;
  13. procedure TForm1.Button2Click(Sender: TObject);
  14. var i:integer;
  15. begin
  16. for i:=0 to n-1 do
  17. begin
  18. massiv[i]:=strtoint(InputBox('Элементы массива', 'Введите '+inttostr(i+1)+ ' -й элемент массива','0')); //ввод элементов массива
  19. ListBox1.Items.Add(inttostr(massiv[i]));
  20. end;
  21. end;
  22. procedure TForm1.Button3Click(Sender: TObject);
  23. var i,sum: integer;
  24. begin
  25. sum:=0;
  26. for i := Low(massiv) to High(massiv) do begin
  27. if massiv[i]<0 then
  28. break;
  29. sum:=sum+massiv[i];
  30. end;
  31. Listbox1.Items.Add('Сумма до 1 отрицательного='+ inttostr(sum));
  32. End;
  33. end;

Решение задачи: «Сумма положительных элементов»

textual
Листинг программы
  1. Option Explicit
  2. Option Base 1 'Установка нижнего индекса для всех модульных массивов =1
  3. Dim n&, i&
  4. Dim massiv() As Integer 'massiv: array of integer;
  5.  
  6. Private Sub Command1_Click()
  7.     Command2.Enabled = False
  8.     On Error Resume Next 'Пропуск остановки во время ошибки
  9.    Do: Err.Clear
  10.         n = -1: n = InputBox("Введите размер массива", , 1)
  11.         If n > 10 Then
  12.             If MsgBox("Вы уверенны что будете заполнять " & n & " элементов массива ?", 68) = vbNo Then _
  13.             Exit Sub ' Выход если не уверен
  14.        End If
  15.         ReDim Preserve massiv(n)  '//установка размера массива
  16.        If Err = 0 Then Exit Do 'Если размер установлен правильно выход из этого цикла
  17.    Loop
  18.     List1.Clear
  19.     For i = 1 To n
  20.         Do: Err.Clear
  21.             massiv(i) = InputBox("Введите " & i & "-й элемент", , 0)
  22.             If Err = 0 Then Exit Do 'Выход если всё правильно
  23.        Loop
  24.         List1.AddItem massiv(i) ' а заодно заполняем список
  25.    Next
  26.     Command2.Enabled = True
  27. End Sub
  28.  
  29. Private Sub Command2_Click()
  30.     n = 0
  31.     For i = 1 To UBound(massiv)
  32.         If massiv(i) < 0 Then
  33.             Exit For '//Если число отрицательное выход из цикла пересчёта
  34.        Else
  35.             n = n + massiv(i)
  36.         End If
  37.     Next
  38.     MsgBox " Сумма = " & n, vbInformation
  39.     End  '//Победа !  выход из программы
  40.  
  41. End Sub
  42.  
  43. Private Sub Form_Load()
  44.     Command2.Enabled = False
  45. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.5 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы