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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.05.2009, 20:52   #1
Neytrino
 
Регистрация: 15.05.2009
Сообщений: 3
Смех Нужна помощь с парой програмок в Паскале

по сути, сложностей не надо. желательно код написать максимально доступно для чайников))

Первая задача
Дана символьная строка среди символов которой есть двоеточия. получить все символы расположенные между первым и вторым двоеточиями (если второго двоеточия нет вывести все символы после единственного двоеточия)

и Вторая задача
Дан файл F, элементы которого являются целыми числами. Описать функцию - (f), подсчитывающую сумму отрицательных элементов в файле F.

Заранее благодарю!
Neytrino вне форума Ответить с цитированием
Старый 17.05.2009, 08:10   #2
ViNcHeStEr
Delphi
Форумчанин
 
Регистрация: 12.06.2008
Сообщений: 137
По умолчанию

1)
Код:
var
s:string;
i:integer;
b:boolean;

label v;

begin
  write('Vvedite stroku: '); Readln(s);
  b:=false;
  for i:=1 to length(s) do begin
   if ((b)and(s[i]=':')) then goto v;
   if b then write(s[i]);
   if s[i]=':' then b:=true;
  end;
  v:
  readln;
2)
Код:
var
 f:textfile;
 i,sum,n:integer;
 s,k:string;

begin
  sum:=0;
   assignfile(f,'file.txt');
   reset(f);
   while not (eof(f)) do begin
    read(f,s);
    writeln(s);
    for i:=1 to length(s) do begin
      if s[i]<>' ' then begin
       k:=k+s[i];
      end
      else begin
        n:=strtoint(k);
        if n<0 then begin
        sum:=sum+n;
        end;
        k:='';
      end;
      end;
    end;
   closefile(f);
   write('Summa chisel<0= ',sum);
   readln;

Последний раз редактировалось ViNcHeStEr; 17.05.2009 в 08:56.
ViNcHeStEr вне форума Ответить с цитированием
Старый 17.05.2009, 09:27   #3
HoLToFF
Пользователь
 
Регистрация: 22.03.2009
Сообщений: 58
По умолчанию

ViNcHeStEr, не уверен, что использование меток есть "хороший" тон, считаю, что стоит переписать первую программу вот так:
Код:
Program TwoPoint;
var s: string; ST, i: integer;
begin
write('Vvedite stroku: '); readln(s);
i:=1; ST:=0;
writeln('Simvoli, soderjashiesia mejdu '':''');
  while (i <= length(s)) and (ST < 2) do
    begin
    if s[i] = ':' then ST:=ST+1
    else
    if ST = 1 then write(s[i]);
    i:=i+1;
    end;
readln;
end.
HoLToFF вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь в паскале icelady05 Помощь студентам 4 13.04.2009 17:10
Очень нужна помощь на паскале со строками. Vergilius Помощь студентам 17 12.01.2009 16:54
Срочно нужна помощь в паскале с рядами!! sanex Помощь студентам 8 11.01.2009 21:18
Очень срочно нужна помощь в Паскале. Roland Помощь студентам 4 09.03.2007 21:27