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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.09.2015, 12:18   #1
Dima-91
Форумчанин
 
Регистрация: 28.09.2010
Сообщений: 198
По умолчанию Помощь в коде С++, программа печатающая символы a ... z

Написать программу печатающую символы a ... z и цифры 0 ... 9. Вывести код символов.
+ задание со звездочкой вывести код в 16-ом виде.
Код:
string str = "abcdefghijklmnopqrstuvwxyz" ;
string str1 = "1234567890";
	for (int i = 0; i < 10; i++)
	{
		std::cout<<str1[i]<<"" - "" << (int)(str1[i]) << "\n" ;
	}
	for (int i = 0 ; i < 26 ; i++)
	{
		std::cout<<str[i]<<"" - "" << (int)(str[i]) << "\n" ;
	}

	system ("pause");
	return 0;
Вот код, подскажите правильный он или нет. Вопрос возник из-за выдаваемых значений: a = 197, b = 198 ... 0 = 148. По одному из примеров а = 97, b = 98. Из-за чего разница на 100?
Dima-91 вне форума Ответить с цитированием
Старый 16.09.2015, 12:24   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Из-за чего разница на 100?
Ну в примере может кодировка OEM, а у тебя в программе ANSI. Коды будут разные.
Кстати я бы наверное делал так:
Безымянный.jpg
I'm learning to live...

Последний раз редактировалось Stilet; 16.09.2015 в 12:28.
Stilet вне форума Ответить с цитированием
Старый 16.09.2015, 12:30   #3
Dima-91
Форумчанин
 
Регистрация: 28.09.2010
Сообщений: 198
По умолчанию

'\t' --- коды символов?
Dima-91 вне форума Ответить с цитированием
Старый 16.09.2015, 12:30   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ну, во-первых, кавычки Вы не очень корректно расставили.
а во-вторых, всё нормально выдаётся..
попробуйте:
Код:
	for (int i = 0; i < 10; i++)
	{
		std::cout<<str1[i]<<" code = " << (int)(str1[i]) << "\n" ;
	}
	for (int i = 0 ; i < 26 ; i++)
	{
		std::cout<<str[i]<<" code = " << (int)(str[i]) << "\n" ;
	}

Цитата:
'\t' --- коды символов?
\t - выдать в поток вывода знак табуляции
\n - выдать в поток вывода знак перевода строк (переход на новую строчку)
Serge_Bliznykov вне форума Ответить с цитированием
Старый 16.09.2015, 12:32   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
'\t' --- коды символов?
Нет, это табуляция. Я забыл как правильно в cout форматить. cout.width() вроде...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.09.2015, 13:58   #6
anticlown111
Пользователь
 
Регистрация: 16.09.2015
Сообщений: 10
По умолчанию

Код аналогичный коду Stilet, но с использованием функции printf и выводом шестнадцатеричного значения числа.

Код:
#include <stdio.h>

int main(void)
{
int i;
printf("Symbol Codenumber 16x.Codenumber\n");
for(i='0';i<='9';i++) printf("%c\t%d\t  %x\n",i,i,i); //%x - шестнадцатеричная запись целого числа
for(i='a';i<='z';i++) printf("%c\t%d\t  %x\n",i,i,i);
return 0;
}

Последний раз редактировалось anticlown111; 16.09.2015 в 17:52.
anticlown111 вне форума Ответить с цитированием
Старый 16.09.2015, 14:57   #7
Dima-91
Форумчанин
 
Регистрация: 28.09.2010
Сообщений: 198
По умолчанию

Спасибо всем. Вопрос решен.

Последний раз редактировалось Dima-91; 16.09.2015 в 15:06.
Dima-91 вне форума Ответить с цитированием
Старый 16.09.2015, 15:06   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
%c - символ?
%d - десятичный код?
Да. Может тебе стоит почитать спецификаторы этой функции? Что каждый их них означатет.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помощь в коде С++, часы Dima-91 Помощь студентам 2 03.09.2015 18:58
задана символьная матрица nxm. Напечатайте символы, находящиеся в столбцах, элементы которых симметричны (ошибка в коде. Delphi) Начинающий програм Помощь студентам 5 04.04.2012 22:53
программа считывающая пять целых чисел и определяющая, печатающая наибольшее и наименьшее число из них Syber Общие вопросы C/C++ 3 30.06.2008 22:39
Символы и строки. Нужна помощь insi Фриланс 6 24.05.2008 20:54
Программа печатающая саму себя :o K@$K@ Паскаль, Turbo Pascal, PascalABC.NET 7 09.04.2008 16:24