среда, 2 мая 2007 г.

Начинаю кодить на С++ :) Первая программка и первые пролемы.

Пишем конвертер значений температуры с градусов Цельсия в Фаренгейт

Открываем Code Blocks, выбираем в меню File >> NewProject... далее тип приложения Console

Заходим в редактор кода и пишем:

#include < stdio.h >

#include < iostream.h >

int main(int nNumberofArgs, char* pszArgs[])
{
int nNCelsius;
cout << "Введите температуру в градусах Цельсия: ";
cin >> nNCelsius;
int nNFactor;
nNFactor = 212 -32;
int nFahrenheit;
nFahrenheit = nNFactor * nNCelsius/100 + 32;
cout << "Температура по Фаренгейту: ";
cout << nFahrenheit;
return 0;
}

Собираем и компилируем проект :)

И сразу после запуска понимаем, что живем в стране, на которую плюют разработчики многих программ, а именно видем кракозямбы в консоли, вместо нормальных русских букв :)

Но решение проблемы с кирилицей в консоли есть! Есть много разных способов, но я пошел по наименьшему сопротивлению (респект форуму Vingrad.ru !).

Итак, напишем свою процедуру вывода кирилических символов в консоль.Наша программа будет иметь следующий вид:

#include < stdio.h >
#include < iostream.h >
//Начало процедуры
void RusOut(char *Str)
{
unsigned char c;
for(int i=0;Str[i]!='\0';i++)
{
c=Str[i];
if(c>127)
{
if(c<240)c-=64;
else c-=16;
}
cout << c;
}
}
//Конец процедуры
//Собсно код приложения
int main(int nNumberofArgs, char* pszArgs[])
{
int nNCelsius;
RusOut("Температура по Цельсию: ");
cin >> nNCelsius;
int nNFactor;
nNFactor = 212 -32;
int nFahrenheit;
nFahrenheit = nNFactor * nNCelsius/100 + 32;
RusOut("Температура по Фаренгейту: ");
cout << nFahrenheit;
return 0;
}

Вот собсно и все :) Оказывается не так все и страшно.

Сам проект можно скачать здесь и собсно само приложение здесь

воскресенье, 29 апреля 2007 г.

Возвращение блудного попугая :)

Ну вот, после долгого отсутствия снова вернулся в Астрахань.
За все это время успел побывать в Питере на выпуске своих однокашников :) Фотка размещу чуть позже.