Rails developer
10 / 10 / 0
Регистрация: 15.06.2009
Сообщений: 111
1

Работа с последовательностями

22.11.2009, 15:01. Показов 970. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Тема: Программирование алгоритмов, содержащих базовые структуры. Работа с числовыми последовательностями.


Дана последовательность из n вещественных чисел, начинающаяся с отрицательного числа.
Определить, какое количество отрицательных чисел записано в начале последовательности.
Условный оператор не использовать.

вот как должна выглядеть программа:
Работа с последовательностями


и еще вот такой код не подходит:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
 
procedure TForm1.Button1Click(Sender: TObject);
var
  i, j, Count      : Integer;
  StrTmp        : String;
  LastChar      : Char;
begin
 
  StrTmp := Edit1.Text;
 
  //Цикл обработки строки, которая содержит входную последовательность чисел.
  LastChar := 'x';
  i := 1;
  while i <= Length(StrTmp) do begin
    if
      ( not (StrTmp[i] in [' ', ';']) )
      and ( ( LastChar in [' ', ';'] ) or (i = 1) )
    then begin
      //Обнаружено начало записи числа.
      //Ищем окончание записи числа.
      j := i;
      for j := i to Length(StrTmp) do begin
        if j < Length(StrTmp) then begin
          if StrTmp[j + 1] in [' ', ';'] then begin
            Break;
          end;
        end;
      end;
      //Исследование значения числа.
      case StrToFloat( Copy(StrTmp, i, j - i + 1) ) < 0 of
        //Если число отрицательное - подсчитываем его.
        True  : Inc(Count);
        //Если число положительное - поиск завершён.
        False : Break;
      end;
      //Счетчик цикла i перемещаем на позицию, в которой расположен последний
      //символ в записи числа.
      i := j;
    end;
    //Запоминаем последний обработанный символ.
    LastChar := StrTmp[i];
    Inc(i);
  end;
 
  ShowMessage('Количество ведущих отризательных чисел = ' + IntToStr(Count));
end;
Нужно сделать программу как можно проще
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.11.2009, 15:01
Ответы с готовыми решениями:

Работа с числовыми последовательностями
Помогите пожалуйста!!!вроде бы легкий пример,но никак не получается. Дан двумерный массив....

Работа с последовательностями
Всем привет, дали вот такую лабораторную, помогите разобраться, пожалуйста. 1)Дана...

Работа с последовательностями в СИ
Доброго времени суток. Есть проблема, нужно записать последовательность x1,x2...xN. Не особо...

Работа с последовательностями
Привет всем помогите решить задачу. Имеется последовательность. Задается как одномерный массив. ...

1
13104 / 5885 / 1706
Регистрация: 19.09.2009
Сообщений: 8,808
22.11.2009, 19:58 2
Упростить можно так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
procedure TForm1.Button1Click(Sender: TObject);
var
  i, Count  : Integer;
  StrTmp    : String;
  LastChar  : Char;
begin
 
  StrTmp := Edit1.Text;
 
  //Цикл обработки строки, которая содержит входную последовательность чисел.
  LastChar := 'x';
  i := 1;
  Count := 0;
  while i <= Length(StrTmp) do begin
    if
      ( not (StrTmp[i] in [' ', ';']) )
      and ( ( LastChar in [' ', ';'] ) or (i = 1) )
    then begin
      //Обнаружено начало записи числа.
 
      //Если первым символом в записи является знак "-",
      //значит мы обнаружили запись отрицательного числа.
      case StrTmp[i] of
        //Если число отрицательное - подсчитываем его.
        '-'  : Inc(Count);
        //Если число неотрицательное - поиск завершён.
        else Break;
      end;
    end;
    //Запоминаем последний обработанный символ.
    LastChar := StrTmp[i];
    Inc(i);
  end;
 
  //ShowMessage('Количество ведущих отрицательных чисел = ' + IntToStr(Count));
  Label1.Caption := 'Количество ведущих отрицательных чисел = ' + IntToStr(Count);
end;
1
22.11.2009, 19:58
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.11.2009, 19:58
Помогаю со студенческими работами здесь

Работа с числовыми последовательностями
Составить программу вычисления выражения вида: (а+1)*(а-3)*(а+5)*(а-7)*... на паскале. Пожалуйста...

Работа с последовательностями чисел
Вычисление суммы только четных чисел из последовательно вводимых чисел.

Работа с числовыми последовательностями
Помогите решить задачу на паскале. Составить программу вычисления выражения вида:...

Работа с последовательностями чисел
Ребята, помогите составить блок схему плиз, есть вот такая прога Program Lab_3; {Laboratornaya...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru