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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 31.10.2012, 22:28   #1
mimit
Пользователь
 
Регистрация: 18.10.2012
Сообщений: 49
По умолчанию Задача на цикл с символами

Пользователь вводит произвольные символы. Определить есть ли среди символов, введенных до символа с кодом 51, русские буквы
Вот задача нужно решить ее с помощью цикла while и repeat у меня не получается с символами если кому не сложно можете решение написать или объяснить как делать
mimit вне форума Ответить с цитированием
Старый 01.11.2012, 10:18   #2
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Ограничение "с помощью цикла while" тут ни к селу, ни к городу. Но...
Код:
bool IsRussianLetter(char c){
  const char* russians = "АБВГДЕЁЖЗИКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеё...эюя";
  int i=0;
  while(i<66) if(russians[i]==c) return true; else ++i;
  return false;
}
Abstraction вне форума Ответить с цитированием
Старый 01.11.2012, 10:33   #3
Helloween
Форумчанин
 
Регистрация: 24.04.2012
Сообщений: 300
По умолчанию

Почему бы и нет?
Код:

bool isRus(char c)
{
 //цикл while
 int i = 0;
 while(i < 10)
 {
   c = c; i++;
 }
 //проверка
 if(c >= 'А'&& c <= 'я')
    return true;
 return false;
}
Помог? Оставляем отзыв =)
Helloween вне форума Ответить с цитированием
Старый 01.11.2012, 10:39   #4
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

KOI-8 и ряд других кодировок располагают символы кириллицы не непрерывным блоком, к сожалению. Поэтому такой фокус чреват.
Abstraction вне форума Ответить с цитированием
Старый 01.11.2012, 10:55   #5
Helloween
Форумчанин
 
Регистрация: 24.04.2012
Сообщений: 300
По умолчанию

в С ansi кодировка используется.
Помог? Оставляем отзыв =)
Helloween вне форума Ответить с цитированием
Старый 01.11.2012, 10:58   #6
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Стандарт оговаривает кодировку для символов кириллицы? Я там такого не помню, по крайней мере.
Abstraction вне форума Ответить с цитированием
Старый 01.11.2012, 11:18   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

согласен с решение Abstraction из пост #2

только, имхо, while здесь подразумевался для цикла, пока не ввели символ с кодом 51

Только с чего все решили, что TC нужен код на языке C ? я чего-то проглядел?...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 01.11.2012, 11:25   #8
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

По-моему, "язык не указан" = "язык на усмотрение отвечающего".
Abstraction вне форума Ответить с цитированием
Старый 01.11.2012, 23:24   #9
mimit
Пользователь
 
Регистрация: 18.10.2012
Сообщений: 49
По умолчанию

Цитата:
Сообщение от Abstraction Посмотреть сообщение
Ограничение "с помощью цикла while" тут ни к селу, ни к городу. Но...
Код:
bool IsRussianLetter(char c){
  const char* russians = "АБВГДЕЁЖЗИКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеё...эюя";
  int i=0;
  while(i<66) if(russians[i]==c) return true; else ++i;
  return false;
}
Код:
writeln('Введите символы');
  a:=128;
  b:=241;
 //цикл while
  while ord(s)<>51 do
  begin
    readln(s);
    if (a<=ord(s)) and (ord(s)<=b)
      then
        t:=true;
  end;
  if t
    then
      writeln('Есть')
    else
      writeln('нет');   
  //Цикл Repeat
  repeat
    readln(s);
    if (a<=ord(s)) and (ord(s)<=b)
      then
        t:=true;
  until ord(s)=51;
  if t
    then
      writeln('есть')
    else
      writeln('нет');
  readln;
end.
Спасибо что хотели помочь но я решил по своему
mimit вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача 1-реализована.Задача 2-Найти и вывести символы 2-ой строки не совпавшие с символами 1-ой строки Leshkin Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 12.11.2013 08:57
Задача с символами pasha1993 Помощь студентам 5 13.10.2010 12:15
задача с символами с++ kate311893 Помощь студентам 6 19.09.2010 20:11
Цикл с предусловием. ( цикл while) Цикл с постусловием. (цикл repeat ... until) Mr.User Помощь студентам 9 23.11.2007 01:34