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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.03.2010, 15:06   #1
Литеция
Новичок
Джуниор
 
Регистрация: 12.03.2010
Сообщений: 1
По умолчанию Строки.

Нужно решить две задачи в Делфи, 1 курс.

1. Дана строка, состоящая из русских слов, разделённых пробелами (одним или несколькими). Определить количество слов, которые содержат ровно три буквы "а".

2. Дан текстовый файл, каждая строка которого изображает целое число, дополненное слева и справа несколькими пробелами. Вывести сумму этих чисел и их количество.
Литеция вне форума Ответить с цитированием
Старый 12.03.2010, 15:17   #2
fenix-elite
Пользователь
 
Аватар для fenix-elite
 
Регистрация: 02.11.2008
Сообщений: 75
По умолчанию

Пиши в Асю.
«Когда ты действительно чего-то хочешь, вся Вселенная помогает тебе осуществить твою мечту».(с) Пауло Коэльо
fenix-elite вне форума Ответить с цитированием
Старый 12.03.2010, 15:29   #3
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

Ну вот один из вариантов задачи 2
Код:
procedure TForm1.Button1Click(Sender: TObject);
var SL:TStringList;
    i,sum:integer;
      s:string;
begin
 SL:=TStringList.Create;
 sum:=0;
 SL.LoadFromFile('c:\11.txt');//указываем путь к файлу
 for i:=0 to SL.Count-1 do
  begin
   s:=Trim(SL[i]);//удаляем пробелы
   sum:=sum+StrToInt(s);
  end;
 ShowMessage('Всего чиел: '+IntToStr(SL.Count)+#13#10+'Сумма чиел: '+IntToStr(sum));
 SL.Free;
end;
Для задачи 1
Код:
procedure TForm1.Button2Click(Sender: TObject);
var i,j,s3a,a:integer;
    stroka,s:string;
begin
 stroka:='ыаы  ыаваыа пропроп  вавпрпрапап      ыаыа укеукеаваа ролпрппро';
  s3a:=0;
  a:=0;
 for i:=1 to Length(stroka) do
  begin
   if stroka[i]<>' ' then s:=s+stroka[i]
   else if s<>'' then
    begin
     for j:=1 to length(s) do
     if s[j]='а' then Inc(a);
     if a=3 then Inc(s3a);
     a:=0;
     s:='';
    end;
  end;
  ShowMessage('В строке '+IntToStr(s3a)+' слова в котором 3 буквы "а"');
end;

Последний раз редактировалось SERG1980; 12.03.2010 в 15:48.
SERG1980 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление элементов строки s2 из строки s1 Ueshua Общие вопросы C/C++ 4 20.12.2009 13:06
Перенести символа с начала строки в место перед запятой этой же строки. Zhiltsov Microsoft Office Excel 4 05.06.2009 13:10
Строки. Как вывести часть строки? Anfall Общие вопросы Delphi 7 26.02.2009 09:10
считать из файла две строки, вывести на экран символы первой строки, которые отсутствуют во второй gotex Помощь студентам 4 08.05.2008 02:27
как вывести строку поочередно сначала первая буква первой строки потом первая буква второй строки и т.д. vitalik007 Помощь студентам 1 25.09.2007 20:45