Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Массив в Visual Basic

79K
01 апреля 2013 года
Ravv
3 / / 01.04.2013
Дан массив целых чисел из n элементов заполненный случайным образом числами из промежутка -20,40. Найти удвоенную сумму положительных элементов. Найти колличество тех элементов, значения которых отрицательных и по модулю не превосходят заданного числа A
Никак не могу сделать :D
вторую часть нужно сделать мозги не допетривают!
"Найти удвоенную сумму положительных элементов. Найти колличество тех элементов, значения которых отрицательных и по модулю не превосходят заданного числа A "
20K
02 апреля 2013 года
ellor!
198 / / 24.05.2012
А заодно и отчёт написать, и остальную домашку сделать, и ещё денег закинуть на мобилу.
88K
01 апреля 2013 года
gndragonfly
6 / / 01.04.2013
сперва хотел словами написать. Но решил пока на Паскале:

Код:
const
  max = 1000;

var
  i, n, A, sum_p, sum_otr: integer;
  mas: array [1 .. max] of integer;

begin
  write('n=');
  readln(n);
  write('A=');
  readln(A);
  if n > max then
    n := max;
  // либо использовать динамический массив !!!

  randomize;
  for i := 1 to n do
    mas[i] := random(61) - 20;

  writeln('Array:');
  for i := 1 to n do
    write(mas[i]:4);
  writeln;

  sum_p := 0;
  sum_otr := 0;
  for i := 0 to n do
  begin
    if mas[i] > 0 then
      sum_p := sum_p + mas[i]
    else     // сюда попадут отриц числа либо 0 (но проверку на равенство 0 делать необязательно)
      if abs(mas[i])<= A then
            sum_otr := sum_otr + mas[i];
  end;
  sum_p := sum_p*2; // можно в цикле умножать элемент, но зачем?

  writeln('Udvoenaya summa polojit chisel: ',sum_p);
  writeln('Summa otric chisel < A po modulu: ',sum_otr);
  readln;

end.
на VB пока лень переводить. Может позже напишу
88K
01 апреля 2013 года
gndragonfly
6 / / 01.04.2013
О вот кажись для VB слабал:

Код:
Sub z1()

Dim i As Integer
Dim n As Integer
Dim A As Integer
Dim sum_p As Integer
Dim sum_otr As Integer
Dim mas() As Integer
Dim s As String
 
  n = Val(InputBox("Vvedite kol-vo chisel", "n", 6))
  ReDim mas(n - 1) As Integer
  A = Val(InputBox("Vvedite max chislo", "A", 10))
  Randomize
 
  s = ""
  For i = 0 To n - 1
    mas(i) = Int(41 * Rnd) - 20
    s = s + str(mas(i)) + "; "
  Next i
  MsgBox s
 
  sum_p = 0
  sum_otr = 0
 
  For i = 0 To n - 1
    If mas(i) > 0 Then
      sum_p = sum_p + mas(i)
    ElseIf Abs(mas(i)) <= A Then
        sum_otr = sum_otr + mas(i)
    End If
  Next i
 
  sum_p = sum_p * 2
 
  MsgBox str(sum_p)
  MsgBox str(sum_otr)

End Sub
PS
вижуал бейсик не учил (только, что на форумах почитал, как объявлять переменные и про циклы)
писал как макрос в Ворде, т.к. нету у меня среды разработки ( в основном пишу на Delphi, Java и немного С++), но должно все работать
79K
01 апреля 2013 года
Ravv
3 / / 01.04.2013
А если не сложно можно ещё и эскиз набарасать ? :D
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог