1 Востаннє редагувалося Q-bart (17.11.2014 22:39:55)

Тема: Array of string

Доброго вечора!
Якщо я хочу дістати, напр. перший елемент стрічки, то пишу   

 st[1]

В мене є масив з стрічок.

s: array [1..100] of string;

Мені треба перший елемент стрічки, першого елемента масиву... По логіці треба писати так:

s[1][1]

Але так не працює... Як буде правильно??

2 Востаннє редагувалося koala (17.11.2014 22:52:20)

Re: Array of string

Щоб запрацювало, треба щонайменше увімкнути комп'ютер.
А щоб переконати нас, що ви його увімкнули, треба пояснити, що ви маєте на увазі під "не працює": не компілюється? Які повідомлення про помилки? Щось інше?

Подякували: Q-bart1

3 Востаннє редагувалося Q-bart (17.11.2014 23:06:53)

Re: Array of string

Власне задача. Вводиш 2 числа.  В діапазоні цих двох чисел, всі числа, що містять 6 треба викинути з всієї кількості. Треба вивести к-сть чисел без шісток...
Помилка в 16 рядку..

:Ошибка времени выполнения: Индекс выходит за границы массива
program zad2;

var
  n, j, a, b, z: integer;
  c: array [1..100] of integer;
  s: array [1..100] of string;

begin
  readln(a, b);
  z:=b-(a-1);
  for n:= a to b do
  begin
    c[n]:= i;
    str(c[n], s[n]);
    for j := 1 to length(s[n]) do
      if s[n][n]='6' then z:=z-1;
  end;
writeln(z);
  
end.
Post's attachments

3456.jpg, 78.5 kb,  x
3456.jpg 78.5 kb, 1 downloads since 2014-11-17 

4

Re: Array of string

Ну правильно - хто вам сказав, що s[n][n] існує? Перевіряйте спершу довжину рядка, а вже потім його n-й символ.

Подякували: Q-bart1

5 Востаннє редагувалося Q-bart (17.11.2014 23:18:15)

Re: Array of string

тобто так?

if length(s[n])>1 then if s[n][n]='6' then z:=z-1;

та ж сама помилка..

6

Re: Array of string

Підставте, скажімо, n=3 і перевірте свій вираз для рядка довжиною 2.

Подякували: Q-bart1

7

Re: Array of string

ДУЖЕ ДЯКУЮ!!!!! :)  :)  :)
Ви змусили мене самого додуматися...
Дякую!!!

Подякували: koala1