IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Разбиение строки на числа
-Денис-
сообщение 5.04.2006 14:02
Сообщение #1


Гость






Привет. Помогите мне, пожалуйста, дописать прогу, а то чет никак. Короче тема следующая:
Код

uses crt, system;    
const nv=3;    
type
  tmas=array[1..1] of integer;        
  
  tmatrix=array[1..nv] of
      record  
        str:string;  
                     qty:integer;                      
                     mas:^tmas;                      
    end;                              
var
  indicator:byte;
  matrix:tmatrix;

{Write Reference}
Procedure Commands;
Begin
  Writeln('Choose command:');
  Writeln('1 - Select array');
  Writeln('2 - Input array');
  Writeln('3 - Output array');
  Writeln('4 - Sorting array');
  Writeln('5 - Array processing');
  Writeln('6 - Exit');
End;

{Select array}
procedure Select_array;                  
var a:byte;
begin
  writeln('Enter number of desired array from 1 to 3');
  readln(a);                      
  if (a>=1)and(a<=3)
   then
    indicator:=a  
   else
        writeln('Not available number');
end;

{Input array}
procedure Input_array;
var i,n,k:byte;
        s:string;
begin
  Writeln('Input array in string across comma');
  readln(s);
  k:=1;
  for i:=1 to length(s) do
    if (s[i]<>'') and (s[i]<>',') and (s[i] not in [a..z])
        then
            matrix[indicator].str[k]:=matrix[indicator].str[k]+s[i]
        else
            inc(k);
  getmem(matrix[indicator].mas,k*2);
  for i:=1 to k do
      val(matrix[indicator].str[i],matrix[indicator].mas);
  matrix[index].qty:=k;    
end;
....

Но вот в последней процедуре возникли вопросы: правильно ли я запихнул строку, содержащую целочисленные элементы, введеные через запятую, в вектор? Как отправить юзера на повторный ввод, если code=1?
Заранее огромное спасибо.
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.06.2025 21:45
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"