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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.05.2011, 21:58   #1
X-QuadrO
 
Регистрация: 22.02.2011
Сообщений: 4
По умолчанию Строковые переменные (найти букву в строке)

Собственно сама задача:
Составить программу, выполняющую следующее задание: дана строка символов.
Выяснить, входит ли в строку буква “ж”.

Вот че написал:

Код:
var
  i: integer; ent: boolean; str: string;

begin
  write('String:=');
  readln(str);
  ent := false;
  for i := 1 to length(str) do
    if str = 'j' then
    begin ent := true; break; end;
  if ent then writeln('Буква присутствует в строке') else writeln('Буквы в строке нет')
end.
Она работает, но не правильно из-за строчки if str='j' then (т.к. строка не равна одному символу вот он и выводит по ветви else) Подскажите как поправить?

И еще если может\знает кто на записи задачка, гляньте)
Составить программу с использованием записей для выполнения указанного ниже задания.
Заданы проекции вектора на оси координат X и Y. Найти его модуль.

Последний раз редактировалось X-QuadrO; 19.05.2011 в 22:26.
X-QuadrO вне форума Ответить с цитированием
Старый 20.05.2011, 14:21   #2
Plague
Забанен
Форумчанин Подтвердите свой е-майл
 
Аватар для Plague
 
Регистрация: 01.11.2006
Сообщений: 420
По умолчанию

функцию pos изучали?

function Pos(subs,s: string): integer;
Возвращает позицию подстроки subs в строке s. Если не найдена, возвращает 0

Код:
var str: string;
begin
  write('String:=');
  readln(str);
  if pos('ж',str)>0 then writeln('Буква присутствует в строке') else writeln('Буквы в строке нет')
end.
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
Plague вне форума Ответить с цитированием
Старый 21.05.2011, 11:50   #3
Sinapsik
Пользователь
 
Аватар для Sinapsik
 
Регистрация: 29.03.2011
Сообщений: 28
По умолчанию

Цитата:
Сообщение от X-QuadrO Посмотреть сообщение
Собственно сама задача:
Составить программу, выполняющую следующее задание: дана строка символов.
Выяснить, входит ли в строку буква “ж”.

Вот че написал:

Код:
var
  i: integer; ent: boolean; str: string;

begin
  write('String:=');
  readln(str);
  ent := false;
  for i := 1 to length(str) do
    if str = 'j' then
    begin ent := true; break; end;
  if ent then writeln('Буква присутствует в строке') else writeln('Буквы в строке нет')
end.
Она работает, но не правильно из-за строчки if str='j' then (т.к. строка не равна одному символу вот он и выводит по ветви else) Подскажите как поправить?

И еще если может\знает кто на записи задачка, гляньте)
Составить программу с использованием записей для выполнения указанного ниже задания.
Заданы проекции вектора на оси координат X и Y. Найти его модуль.
Кэп намекает что тут нужно str[i]...
Sinapsik вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Строковые переменные natt23 Общие вопросы C/C++ 8 15.04.2011 18:54
Строковые переменные ramilll Паскаль, Turbo Pascal, PascalABC.NET 0 20.12.2010 19:53
Строковые переменные locdoc Помощь студентам 5 14.11.2010 14:14
Строковые переменные nisha Помощь студентам 3 12.11.2010 20:51
Строковые переменные NightFire Помощь студентам 1 23.03.2009 06:20