Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.11.2010, 01:02   #1
Zhuk.
 
Регистрация: 28.10.2010
Сообщений: 6
По умолчанию Массив

Помогите с задачкой.....
Постройте с помощью массива стек из 6 строковых элементов. Разместите в стеке шесть элементов: ‘name’, ‘fio’, ‘ves’, ‘age’, ‘rost’, ‘dlina’. Удалите из стека два элемента ‘dlina’ и ‘fio’ и добавьте новый элемент ‘size’. Результаты как промежуточных, так и конечных результатов отобразить на экране.
Zhuk. вне форума Ответить с цитированием
Старый 10.11.2010, 07:38   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Код:
a = [‘name’, ‘fio’, ‘ves’, ‘age’, ‘rost’, ‘dlina’]
puts a
a.pop
puts a
a.pop
a.pop
a.pop
a.pop
puts a
a.push 'size'
Навскидку, не проверял.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 10.11.2010, 09:17   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Или типа:
Код:
MODULE Стеки;
IMPORT StdLog;
VAR
 Стек:ARRAY(10) OF ARRAY(250) OF CHAR;
 УказательСтека:INTEGER;

PROCEDURE pop(Элемент:ARRAY OF CHAR);
VAR i:INTEGER;
BEGIN
 i:=0;
 IF УказательСтека<10 THEN
  INC(УказательСтека);
  StdLog.String('Вносим');StdLog.Tab;
  StdLog.String(Элемент);
  WHILE (Элемент[i]#CHR(0))&(i<50) DO
   Стек[УказательСтека][i]:=Элемент[i];
   INC(i);
  END;
  Стек[УказательСтека][i]:=CHR(0);
 ELSE
  StdLog.String('Стек переполнен');
 END; 
 StdLog.Ln;
END pop;

PROCEDURE push;
BEGIN
 IF УказательСтека>0 THEN
  StdLog.String('Выносим');StdLog.Tab;
  StdLog.String(Стек[УказательСтека]);
  DEC(УказательСтека); 
 ELSE
   StdLog.String('Стек пуст');
 END;
 StdLog.Ln;
END push;

PROCEDURE do*;
BEGIN
 pop('name');
 pop('fio');
 pop('ves');
 pop('age');
 pop('rost');
 pop('dlina');
 push; push; push;push; push;
 pop('size');

END do;

BEGIN
 StdLog.Clear;
 УказательСтека:=0;
END Стеки.

Стеки.do;
Результат:
Цитата:
Вносим name
Вносим fio
Вносим ves
Вносим age
Вносим rost
Вносим dlina
Выносим dlina
Выносим rost
Выносим age
Выносим ves
Выносим fio
Вносим size
Цитата:
Utkin
F#. дружище?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.11.2010, 09:33   #4
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
F#. дружище?
Нет, я в последнее время больше по Руби прикалываюсь. Интересный язык, вызывает ностальгию по QBasic, но с другой стороны имеется строгость Паскаля... + все является объектом, даже числа тоже объекты и имеют свои методы...
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 11.11.2010, 22:09   #5
Zhuk.
 
Регистрация: 28.10.2010
Сообщений: 6
По умолчанию

спасиб за помощь
Zhuk. вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как конвертировать массив символов в массив байт davinci C++ Builder 6 30.10.2010 18:09
Одномерный массив , двухмерный массив Woxx Паскаль, Turbo Pascal, PascalABC.NET 0 10.09.2010 09:28
Одномерный массив. Q basic - Построить новый массив из элементов исходного ,которые больше P. Marishkaa Помощь студентам 2 12.01.2010 16:54
Двумерный массив, одномерный массив. Branbal Помощь студентам 14 18.11.2009 12:40
Упорядочить массив в порядке возрастания и напечатать входной и исходный массив. TheVenny Помощь студентам 3 26.11.2008 15:06