PDA

Просмотр полной версии : Dev C++


Dr.Perry_Cox
01.06.2009, 19:02
Есть такая проблема:в деве написал простенькую программу для перевода градусов из фаренгейта в цельсий,скомпилировал,запу стил и...тут увидел что в окне стоит ужасная надпись на непонятном языке,то есть просто какие то закорючки...Дальше я ввел число 210 и нажал Enter...Программа(не дев,а которую я написал) закрылась!что делать?

H1Z
01.06.2009, 19:07
а код покажешь?

VERte][
01.06.2009, 19:07
тут шаманов и ясновидцев нет, нужна помощь - давай скрины и код

Dr.Perry_Cox
01.06.2009, 19:13
//
// Программа для преобразования
// Градусов Цельсия в градусы Фаренгейта:
// Fahrenheit = NCelsius * (212-32)/100 + 32
//
#include <cstdio>
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int nNumberofArgs, char* pszArgs[])
{
// Введите температуру в градусах Цельсия
int celsius;
cout << "Введите температуру по Цельсию: ";
cin >> celsius;

// для приведенной формулы преобразования
// вычислим преобразующий множитель
int factor;
factor = 212 - 32;

// импользуем вычесленный множитель для
// преобразования градусов Цельсия в
// градусы Фаренгейта

int fahrenheit;
fahrenheit = factor * celsius/100 + 32;
// вывод результатов
cout << "Температура по Фаренгейту: ";
cout << fahrenheit;

return 0;
}
Это код
Вот картинка http://i055.radikal.ru/0906/10/b94ccb7da4ea.jpg (http://www.radikal.ru)

Fata1ex
01.06.2009, 19:14
Пиши латиницей и в конце добавь например getch();

cout << fahrenheit << endl;
Или так

H1Z
01.06.2009, 19:15
Конечно не работает. Ты выводишь сырой текст, т.е. будут крякозябры, а закрывается потому что нет gecth() или подобной ф-и.

Опоздал ;)

Dr.Perry_Cox
01.06.2009, 19:20
Спасибо=)Просто писал все по книжке С++ для чайников(только после этого не бейте)))
А getch ставить после } этой скобки?или ее можно убрать?

H1Z
01.06.2009, 19:22
getch() ставится до return 0;
и в начале помойму надо включить:
#include <conio>

Lilo
01.06.2009, 19:23
мой совет выруби кс и читай внимательнее)))

H1Z
01.06.2009, 19:24
мой совет выруби кс и читай внимательнее)))

:D

Dr.Perry_Cox
01.06.2009, 19:28
Lilo Долго думал как ты узнал...потом увидел скрин))))

VERte][
01.06.2009, 19:28
если уже iostream подключен зачем ещё чего-то подключать, просто перед ретурном сделай ввод на том же cin:
cin>>celsius; //заюзали уже не нужню переменную

либо сделай паузу перед завершением программы, так же перед ретурном вставь:
sleep time; //time сам подберёшь, cstdlib вроде нужна, но она уже подключена

Dr.Perry_Cox
01.06.2009, 19:40
Спасибо заработало!

razb
01.06.2009, 19:41
если уже iostream подключен зачем ещё чего-то подключать, просто перед ретурном сделай ввод на том же cin:
cin>>celsius; //заюзали уже не нужню переменную

либо сделай паузу перед завершением программы, так же перед ретурном вставь:
sleep time; //time сам подберёшь, cstdlib вроде нужна, но она уже подключена
Лучше тогда так:
cin.get()

Dr.Perry_Cox
01.06.2009, 19:54
И еще вопрос:а можно как нибудь сделать,что бы надписи были на русском??

H1Z
01.06.2009, 20:01
лично я писал ф-ю которой передавал русский текст а она возвращала совместимый с кодировкой CP1251 текст.

Fata1ex
01.06.2009, 20:05
CharToOem() и OemToChar()

Dr.Perry_Cox
01.06.2009, 20:09
Fata1ex прости за тупой вопрос:куда это надо вставить?

H1Z
01.06.2009, 20:09
CharToOem() и OemToChar()
Разве это будет в MinGW(Dev c++ работает на этом компиляторе)? Этож вроде в либах VC++. Или я че путаю?

H1Z
01.06.2009, 20:11
тут разбирается эта тема и там есть примеры:
http://www.forum.asoiu.com/index.php?action=printpage;topic=493.0

Dr.Perry_Cox
01.06.2009, 20:15
H1Z спасибо)и последний вопрос,скорее просьба,если не сложно дай свою аську,я как полный нуб буду если что иногда писать,хорошо?