Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Большие и маленкие буквы в С++

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> Большие и маленкие буквы в С++
Имя
Сообщение << Старые топики   Новые топики >>
Большие и маленкие буквы в С++ - 2008-04-19 23:51:22.383333   
BeoWolf11

Сообщений: 76
Оценки: 0
Присоединился: 2008-01-31 21:09:43.920000
Вот вводим с клавиатуры букву (любую). Какая функция нужна чтоб определить большая ли это буква или нет? И если она большая, зделать ее маленкой, и наоборот, если она маленькая, зделать ее большой… И опубликовать результат.
Post #: 1
RE: Большие и маленкие буквы в С++ - 2008-04-20 00:49:17.213333   
_SaZ_

Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
void convert( char *str1, char *str2 ) { &nbsp;&nbsp;&nbsp; const int ofs = 'a' - 'A'; &nbsp;&nbsp;&nbsp; while ( *str1 ) &nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ( *str1 &gt;= 'a' &amp;&amp; *str1 &lt;= 'z' ) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *str2 = *str1 - ofs; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ( *str1 &gt;= 'A' &amp;&amp; *str1 &lt;= 'Z' ) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *str2 = *str1 + ofs; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } else &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *str2 = *str1; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ++str1; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ++str2; &nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp; *str2 = '\0'; } Для русских букв будет чуть сложнее - думай сам. Идея, думаю, понятна.
Post #: 2
RE: Большие и маленкие буквы в С++ - 2008-04-20 02:22:57.616666   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
#include &lt;ctype.h&gt; Там есть пачка функций, которые позволяют проверять символы согласно текущей локали, типа isupper, islower, isalpha, isdigit, isblank…
Post #: 3
RE: Большие и маленкие буквы в С++ - 2008-05-05 04:43:55.913333   
provider

Сообщений: 100
Оценки: 0
Присоединился: 2008-04-12 15:31:33.813333
Для русских подскажите в чем ошибка …
/*
 *
 *    This program demonstrates how to manipulate the palette. It draws
 *    a set of concentric circles onto the screen and animates them by
 *    cycling the palette.
 */

#include <allegro.h>



int main(void)
{
   PALETTE palette;
   RGB temp;
   int c;

   if (allegro_init() != 0)
      return 1;
   install_keyboard();
   if (set_gfx_mode(GFX_AUTODETECT, 320, 200, 0, 0) != 0) {
      if (set_gfx_mode(GFX_AUTODETECT, 640, 480, 0, 0) != 0) {
     allegro_message("Error setting graphics mode\n%s\n", allegro_error);
     return 1;
      }
   }

   /* first set the palette to black to hide what we are doing */
   set_palette(black_palette);

   /* draw some circles onto the screen */
   acquire_screen();

   for (c=255; c>0; c–)
      circlefill(screen, SCREEN_W/2, SCREEN_H/2, c, c);

   release_screen();

   install_mouse();
   show_mouse(screen);

   /* fill our palette with a gradually altering sequence of colors */
   for (c=0; c<64; c++) {
      palette[c].r = c;
      palette[c].g = 0;
      palette[c].b = 0;
   }
   for (c=64; c<128; c++) {
      palette[c].r = 127-c;
      palette[c].g = c-64;
      palette[c].b = 0;
   }
   for (c=128; c<192; c++) {
      palette[c].r = 0;
      palette[c].g = 191-c;
      palette[c].b = c-128;
   }
   for (c=192; c<256; c++) {
      palette[c].r = 0;
      palette[c].g = 0;
      palette[c].b = 255-c;
   }

   /* animate the image by rotating the palette */
   while (!keypressed()) {
      temp = palette[255];
      for (c=255; c>0; c–)
     palette[c] = palette[c-1];
      palette[0] = temp;
      set_palette(palette);
   }

   return 0;
}

END_OF_MAIN()

  [Linker error] undefined reference to `_WinMain'
  [Linker error] undefined reference to `install_keyboard'

  [Linker error] undefined reference to `_install_allegro_version_check'


Post #: 4
Страниц:  [1]
Все форумы >> [Компилируемые языки] >> Большие и маленкие буквы в С++







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.