Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Задачка о выводе на экран символа по коду 
:(
    Опции темы
zarogon
Дата 4.11.2005, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 4.11.2005
Где: Украина, Киев

Репутация: нет
Всего: нет



Люди хелп. Есть задача о выводе на экран кода по символу:

Код

#include <stdio.h>
#include <conio.h>
main()
{
printf("Najmite lubuu klavishu\n");
unsigned char ch;
ch=getch();
switch(ch)
{
default: printf("%i\n",int(ch)); break;
}
getch();
}

А как сделать чтоб на экран выводился символ по коду smile

Это сообщение отредактировал(а) zarogon - 4.11.2005, 18:42
PM MAIL ICQ   Вверх
powerfox
Дата 4.11.2005, 20:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 2
Всего: 97



Код

#include<iostream>
#include<cstdio>

int main()
        {
                std::cout<<"enter the symbol\n";
                char c = getchar();
                std::cout<< int(c);
                int a =113;
                std::cout<<char(a);
}

в строках 9-10 вывод по коду символа


Это сообщение отредактировал(а) powerfox - 4.11.2005, 20:45


--------------------
user posted image
PM WWW   Вверх
Void
Дата 4.11.2005, 20:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 40
Всего: 173



Код
#include <stdio.h>
#include <limits.h>

int main(void) {
    int code;
    printf("Enter symbol code: ");
    scanf("%i", &code);
    if (code < 0 || code > UCHAR_MAX) {
        printf("Hey, stupid, it must be in [0; %i] interval\n", UCHAR_MAX);
        return 1;
    }
    printf("%c", (char) code);
    return 0;
}



--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
zarogon
Дата 4.11.2005, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 4.11.2005
Где: Украина, Киев

Репутация: нет
Всего: нет



Спасибочки вам smile Вы лучшие smile А можно еще и такую задачку: Вывести на экран предыдущие и следующие буквы латинского алфавита

Это сообщение отредактировал(а) zarogon - 4.11.2005, 22:23
PM MAIL ICQ   Вверх
BreakPointMAN
Дата 4.11.2005, 22:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 15.9.2004
Где: Saratov

Репутация: 14
Всего: 24



Цитата(zarogon @ 4.11.2005, 22:09)
Вывести на экран предыдущие и следующие буквы латинского алфавита

в каком смысле?
Добавлено @ 22:41
т.е. вводится буква латинская, и нужно вывести ту букву, что стоит перед ней и ту, что после нее?


--------------------
"Разруха не в клозетах, а в головах." © Ф.Ф. Преображенский (М.Булгаков, "Собачье сердце")
PM WWW ICQ   Вверх
zarogon
Дата 4.11.2005, 22:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 4.11.2005
Где: Украина, Киев

Репутация: нет
Всего: нет



Да да именно так. Мы вводим букву и нам выводиться предыдущая ей и следующая после нее.
PM MAIL ICQ   Вверх
BreakPointMAN
Дата 4.11.2005, 23:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 15.9.2004
Где: Saratov

Репутация: 14
Всего: 24



Тебе на C или C++ надо? Вот на C так примерно:
Код

#include <conio.h>
#include <stdio.h>
#include <ctype.h>

int main()
   {
    char c;
    do
       {
        clrscr();
        printf("Enter latin letter, please: ");
        scanf("%c",&c);
       }
    while(!isalpha(c));

    char p=c-1, n=c+1;
    if(!isalpha(p)) p='-';
    if(!isalpha(n)) n='-';

    printf("\nPrevious letter: %c", p);
    printf("\nNext letter: %c", n);

    getch();
    return 0;
   }


Это сообщение отредактировал(а) BreakPointMAN - 4.11.2005, 23:07


--------------------
"Разруха не в клозетах, а в головах." © Ф.Ф. Преображенский (М.Булгаков, "Собачье сердце")
PM WWW ICQ   Вверх
zarogon
Дата 4.11.2005, 23:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 4.11.2005
Где: Украина, Киев

Репутация: нет
Всего: нет



Да работает СПАСИБКИ. И еще задача шахматная, эту если можете и не в облом smile Вывести на экран уведомление если шахматная фигура может передвинуться на доске с позиции х1, у1 на х2, у2 рассмотреть такие фигуры: ладья, слон, ферзь учитывать то что на доске координаты по оси х символьные. Вот вроде как на паскале:
Код

uses crt;
var 
x1,x2:char;
y1,y2,f:byte;
begin
writeln('1-ladja, 2-slon, 3-ferz');
readln(f);
writeln('x1,y1,x2,y2');
readln('x1,y1,x2,y2');
case of
1:if(x1=x2) of (y1=y2) then
writeln('Ladja mojet tak hodit');
else writeln('net');
2:if abs(ord(x2)-ord(x1)=abs(y2-y1) then 
writeln('Da');
esle
writeln('Net');
3:if ((x1-x2) or (y1-y) or (abs(ord(x2)-ord(x1))=abs(y2-y1)) then
writeln('Da');
else
writeln('Net');
end;
end.


Это сообщение отредактировал(а) zarogon - 5.11.2005, 00:11
PM MAIL ICQ   Вверх
powerfox
Дата 5.11.2005, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 2
Всего: 97



Вопрос, почему в С++ все используют prinf и scanf?


--------------------
user posted image
PM WWW   Вверх
Void
Дата 5.11.2005, 16:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 40
Всего: 173



powerfox
Изначальный код, который привел автор, был на чистейшем Си диалекта K&R. Поэтому, думаю, ему и сочли нужным отвечать тоже на Си.


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
zarogon
Дата 5.11.2005, 17:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 4.11.2005
Где: Украина, Киев

Репутация: нет
Всего: нет



Блин пытался эту задачку на Си зделать не выходит smile
PM MAIL ICQ   Вверх
BreakPointMAN
Дата 5.11.2005, 17:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 15.9.2004
Где: Saratov

Репутация: 14
Всего: 24



Цитата(zarogon @ 5.11.2005, 17:07)
Блин пытался эту задачку на Си зделать не выходит

Да ты ее хоть на паскале сначала сделай...
Перевод втупую:
Код

int main()
   {
    char x1,x2;
    int y1,y2, f;
    printf("1-ladja, 2-slon, 3-ferz: ");
    scanf("%d",&f);

    printf("x1, y1, x2, y2: ");
    scanf("\n%c%d,%c%d",&x1,&y1,&x2,&y2);


    switch(f)
       {
        case 1:
           if((x1==x2) || (y1==y2))
              printf("Ladja mojet tak hodit");
           else
              printf("net");
           break;
        case 2:
           if (abs(x2-x1)==abs(y2-y1))
              printf("Da");
           else
              printf("Net");
           break;
        case 3:
           if ((x1==x2) || (y1==y2) || abs(x2-x1)==abs(y2-y1))
              printf("Da");
           else
              printf("Net");
           break;
       }
    getch();
    return 0;
   }

Что-то подправил, но работает или нет - не проверял... вводить данные так:
1
a1,a8


--------------------
"Разруха не в клозетах, а в головах." © Ф.Ф. Преображенский (М.Булгаков, "Собачье сердце")
PM WWW ICQ   Вверх
powerfox
Дата 5.11.2005, 20:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 2
Всего: 97



Цитата(Void @ 5.11.2005, 16:34)
powerfox
Изначальный код, который привел автор, был на чистейшем Си диалекта K&R. Поэтому, думаю, ему и сочли нужным отвечать тоже на Си.

Не обратил внимания - было написано Borland C++.

smile :
А реализация Borland сильно отличается от стандарта?


--------------------
user posted image
PM WWW   Вверх
LITEOMILL
Дата 24.1.2023, 00:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 23.1.2023

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1651 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.