Форум Игромании
 
Регистрация
Справка

Программирование Создание, разработка и доработка различных игр и программного обеспечения

Ответ
 
Опции темы
Старый 23.06.2010, 22:42   #1
Юзер
 
Аватар для Elverion
 
Регистрация: 14.05.2010
Сообщений: 185
Репутация: 164 [+/-]
С/C++

Язык программирования C++



Официальные страницы:

C++ (Си++) — компилируемый статически типизированный язык программирования общего назначения. Поддерживает разные парадигмы программирования, но, в сравнении с его предшественником — языком Си, — наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования. Название «C++» происходит от Си (C), в котором унарный оператор ++ обозначает инкремент переменной.


Среда разработки
Скрытый текст:



Пример программирования на C++
Скрытый текст:
Код:
#include <iostream>
#include <numeric>
#include <boost/iterator/counting_iterator.hpp>
#include <boost/iterator/transform_iterator.hpp>
 
int odd(int i)
{
  return 2 * i + 1;
}
 
int square(int i)
{
  return i * i;
}
 
typedef boost::counting_iterator <int> counter;
typedef boost::transform_iterator <int (*)(int), counter> transformer;
 
transformer odds(int n)
{
  return transformer(counter(n), odd);
}
 
transformer squares(int n)
{
  return transformer(counter(n), square);
}
 
int main()
{
  using namespace std;
 
  cout << "Enter vector length: ";
  int n; cin >> n;
 
  cout << inner_product( odds(0), odds(n), squares(0), 0 ) << endl;
}




FAQ
Скрытый текст:
Q.: Зачем нужна тема?
A.: Здесь вам могут помочь понять, местами просто помочь, местами научить. Только помните: решать задачи и писать весь код за вас никто не будет.



Если вы хотите помощи — вставляйте непонятный вам код в тег [spoiler][code][/code][/spoiler].


Полная статья на "Википедии".
Elverion вне форума  
Отправить сообщение для Elverion с помощью Skype™ Ответить с цитированием
Старый 16.09.2012, 16:22   #2
Юзер
 
Аватар для Redlle
 
Регистрация: 11.01.2009
Сообщений: 102
Репутация: 30 [+/-]
Post

Всем привет
Есть тут люди знакомые с MPI (параллельное прог-е)?
Если есть, то нужен ваш совет:

Есть hello world для mpi реализации MPICH2 который на ура компилируются в кодблоксе и запускается ч/з ком. строку с параметрами "mpiexec.exe -n 5 D:\hw.exe" тоже, но тут возникает один нюанс:
"Программа должна выводить свой ранг из числа действующих процессоров и как ни странно она это делает, но делает очень криво в том смысле, что каждый раз строчки выводятся в разном порядке то бишь - может ( 0 из 3, 2 из 3, 1 из 3), а может может ( 1 из 3, 0 из 3, 2 из 3) и так далее.."

Пытался зацикливать программу до тех пор пока 1вым не будет 0 пц, но все бесполезно.
Вот код программки:


Скрытый текст:
PHP код:
#include <iostream>
#include "mpi.h"

using namespace std;

int main(int argcchar *argv[])
{

  
int pc_rank,
      
pc_size;

    
MPI_Init(&argc, &argv);

    
MPI_Comm_rank(MPI_COMM_WORLD, &pc_rank);
    
MPI_Comm_size(MPI_COMM_WORLD, &pc_size);

           
cout<<"\nHello! I'm rank "<<pc_rank<<" of "<<pc_size<<" processor";

    
MPI_Finalize();

    return 
0;




Вот собственно и вопрос кто-нибудь знает, как заставить программу работать с пц по порядку?

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

Скрытый текст:
PHP код:
         if(pc_rank==0){

            
printf("\n PC size: %i ",pc_size);
            
printf("\n Enter the number of partitions:\n [> ");
            
scanf("%i",&n);

            
startwtime MPI_Wtime();
         } 

тут программа сначала выдаст: _, а далее после ввода Enter the number of partitions:\n [>

Как сделать так, чтобы она сначала выводила, что ввести, а потом предлагала? А не наоборот, как это происходит сейчас

P.S. буду очень благодарен тому человеку, кто поможет решить данный проблемы, они хоть и не существенный, но очень портят все логические задумки

Последний раз редактировалось Redlle; 16.09.2012 в 16:37.
Redlle вне форума  
Ответить с цитированием
Старый 23.10.2012, 17:37   #3
Игрок
 
Аватар для PC_GAMER
 
Регистрация: 08.08.2008
Адрес: Земля
Сообщений: 914
Репутация: 234 [+/-]
Задание:
Скрытый текст:
Написать программу, функция main которой включает вызов 3х функций:
- 1-я функция осуществляет ввод исходных данных;
- 2-я функция осуществляет расчет результатов;
- 3-я функция выводит результаты расчета на экран.
В программе использовать два способа передачи параметров в функцию: по значению и по адресу.
Составьте программу –временной интервал. Заданы моменты начала и конца некоторого промежутка времени в часах и минутах (в пределах одних суток). Найти продолжительность этого промежутка в тех же единицах измерения.

Сделал:
Скрытый текст:
// 222.cpp: определяет точку входа для консольного приложения.
//

#include "stdafx.h"
#include <iostream>
using namespace std;

double Rezult(double hour1, double min1, double hour2, double min2);// параметр по назначению и по адресу
double Cin(); void Cout(double HM); // функция ввода и вывода
int main() {
setlocale( LC_ALL,"Russian" );
double hour1, min1, hour2, min2;
double HM,r;
r=Cin(); //вызов функции ввода
HM=Rezult(hour1, min1, hour2, min2);
Cout(HM); //вызов функции вывода
cin>>hour1;
cin>>min1;
return 0;}
double Rezult (double hour1, double min1, double hour2, double min2) { // задание функции
double HM;
HM=(hour2-hour1)*60+(min2-min1);
return HM;}
double Cin(){
double b;
double g;
cout<<"Введите начальное время: ";
cin>>b;
cout<<"Введите конечное время: ";
cin>>g;
return 0;}
void Cout(double HM){
cout<<"Результат в минутах: "<<HM;
}


Выдаёт ошибку:
Скрытый текст:
Run-Time Check Failure #3 - The variable 'min2' is being used without being initialized.
Run-Time Check Failure #3 - The variable 'hour2' is being used without being initialized.
Run-Time Check Failure #3 - The variable 'min1' is being used without being initialized.
Run-Time Check Failure #3 - The variable 'hour1' is being used without being initialized.
Поток 'Поток Win32' (0x15a0) завершился с кодом -1073741510 (0xc000013a).
Программа "[5520] 222.exe: Машинный код" завершилась с кодом -1073741510 (0xc000013a).

Подскажите пожалуйста, что я не правильно написал?
__________________
Grand Theft Auto series fan.
Я буду верить, что Grand Theft Auto: Episodes from Liberty City выйдит на PC © - мечта сбылась.
Разработчикам понадобились месяцы для создания защиты. Русскому хакеру понадобился бутерброд и чашка чая для её взлома.

Последний раз редактировалось PC_GAMER; 23.10.2012 в 17:53.
PC_GAMER вне форума  
Ответить с цитированием
Старый 23.10.2012, 18:35   #4
Surgeon of Death
 
Аватар для Keltar


 
Регистрация: 21.12.2009
Адрес: Тамбов
Сообщений: 2,125
Репутация: 520 [+/-]
Цитата:
Сообщение от PC_GAMER Посмотреть сообщение
hour1, min1, hour2, min2;
у тебя переменным ничего не присвоено, задай начальные значения. Т.е эти строки
Цитата:
cin>>hour1;
cin>>min1;
точно должны быть раньше, чем HM=Rezult(hour1, min1, hour2, min2);
к тому же hour2, min2; нигде не заданы вообще.
__________________
Information Technology Laboratory: решение любых проблем в области мобильных технологий. Быстро. Недорого.
Mobile: Sony Xperia Z2
Tablet: Nexus 7 2013 wifi
Keltar вне форума  
Отправить сообщение для Keltar с помощью ICQ Ответить с цитированием
Старый 23.10.2012, 21:03   #5
Игрок
 
Аватар для PC_GAMER
 
Регистрация: 08.08.2008
Адрес: Земля
Сообщений: 914
Репутация: 234 [+/-]
Цитата:
Сообщение от Keltar Посмотреть сообщение
у тебя переменным ничего не присвоено, задай начальные значения. Т.е эти строки

точно должны быть раньше, чем HM=Rezult(hour1, min1, hour2, min2);
к тому же hour2, min2; нигде не заданы вообще.
Мне ведь нужно вписывать свои значения, а если их я задам, то какой смысл мне создавать ещё и ввод?
Я б вообще забил, но мне нужно это всё использовать
Help me, please
__________________
Grand Theft Auto series fan.
Я буду верить, что Grand Theft Auto: Episodes from Liberty City выйдит на PC © - мечта сбылась.
Разработчикам понадобились месяцы для создания защиты. Русскому хакеру понадобился бутерброд и чашка чая для её взлома.
PC_GAMER вне форума  
Ответить с цитированием
Старый 23.10.2012, 22:17   #6
Юзер
 
Аватар для CMETAHA

 
Регистрация: 24.06.2008
Адрес: Я тут
Сообщений: 472
Репутация: 172 [+/-]
PC_GAMER, Прежде чем использовать переменные их нужно инициализировать. Ты же сначала передаёшь переменные в функцию в качестве параметра, и только потом их инициализируешь. Собственно об этом и говорят ошибки компилятора.
__________________
"Хуже вопроса не в той теме, может быть только вопрос, о вопросе не в той теме." © *@ndrey*

Контактик Щебет Лицокнижка Спроси меня Гплюс
CMETAHA вне форума  
Отправить сообщение для CMETAHA с помощью ICQ Ответить с цитированием
Старый 24.10.2012, 20:17   #7
Вечный Искатель
 
Аватар для Анкар

 
Регистрация: 07.07.2007
Сообщений: 303
Репутация: 387 [+/-]
Меня заверили, что компилятор никогда не поставит никакую переменную на нечетную позицию, благодаря выравниванию и несколько последних битов можно без проблем считать лишней памятью. Для своих замыслов решил это реализовать.
Скрытый текст:
Код:
		inline bool link_up(node* a){
			return reinterpret_cast<uint_64>(a) & 1;
		}

		inline node* tag(node* a){
			uint_64 q = reinterpret_cast<uint_64>(a);
			return reinterpret_cast<node*>(q | 1);
		}

		inline node* untg(node* a){
			uint_64 q = reinterpret_cast<uint_64>(a);
			return reinterpret_cast<node*>(q - (q&1));//Здесь
		}
Отчего-то untg для NULL выдает огромный адрес, хотя должен работать как 0 - 0. Я в раздумьях.
-
UPD. Дело в приоритетах операций. Поправил во имя истории.
__________________
Я вижу, чего ты видеть не можешь —
Видения, на глазное бельмо что похожи.
Лишь повернешься - уйдет наваждение,
Шептанием станет их тихое пение.

Затем станешь видеть то, чего нет —
Тени на месте, где должен быть свет.
Незряч, обезумел, будь отныне готов,
Век коротать свой в Зале Слепцов.

Последний раз редактировалось Анкар; 24.10.2012 в 20:47.
Анкар вне форума  
Ответить с цитированием
Старый 04.11.2012, 09:56   #8
Игрок
 
Аватар для PC_GAMER
 
Регистрация: 08.08.2008
Адрес: Земля
Сообщений: 914
Репутация: 234 [+/-]
Задали курсовую работу по C++. Тема "Эмуляция пункта меню MS Word: формат-шрифт". Тему написал, чтобы вы имели представление, что я имею ввиду.
У нас работы с визуальным оформлением в С++ ещё не было, я будет как раз тогда, когда я буду сдавать работу....
Подскажите пожалуйста статьи, учебники или что-нибудь ещё, что поможет разобраться в этой теме, хотя бы немного.
__________________
Grand Theft Auto series fan.
Я буду верить, что Grand Theft Auto: Episodes from Liberty City выйдит на PC © - мечта сбылась.
Разработчикам понадобились месяцы для создания защиты. Русскому хакеру понадобился бутерброд и чашка чая для её взлома.
PC_GAMER вне форума  
Ответить с цитированием
Старый 05.11.2012, 10:19   #9
Новичок
 
Регистрация: 11.07.2011
Сообщений: 50
Репутация: 9 [+/-]
Всем привет! Подскажите хороший компилятор.
GURON27 вне форума  
Отправить сообщение для GURON27 с помощью Skype™ Ответить с цитированием
Старый 05.11.2012, 13:34   #10
Юзер
 
Аватар для CMETAHA

 
Регистрация: 24.06.2008
Адрес: Я тут
Сообщений: 472
Репутация: 172 [+/-]
GURON27, GCC
__________________
"Хуже вопроса не в той теме, может быть только вопрос, о вопросе не в той теме." © *@ndrey*

Контактик Щебет Лицокнижка Спроси меня Гплюс
CMETAHA вне форума  
Отправить сообщение для CMETAHA с помощью ICQ Ответить с цитированием
Старый 05.11.2012, 14:52   #11
Вечный Искатель
 
Аватар для Анкар

 
Регистрация: 07.07.2007
Сообщений: 303
Репутация: 387 [+/-]
CMETAHA, тогда уж http://www.mingw.org/ Хотя он а винде тормозной, ппц.
__________________
Я вижу, чего ты видеть не можешь —
Видения, на глазное бельмо что похожи.
Лишь повернешься - уйдет наваждение,
Шептанием станет их тихое пение.

Затем станешь видеть то, чего нет —
Тени на месте, где должен быть свет.
Незряч, обезумел, будь отныне готов,
Век коротать свой в Зале Слепцов.
Анкар вне форума  
Ответить с цитированием
Старый 06.11.2012, 21:03   #12
Игроман
 
Аватар для Hast


 
Регистрация: 13.07.2007
Адрес: Сімферополь
Сообщений: 3,012
Репутация: 629 [+/-]
Цитата:
Сообщение от Анкар Посмотреть сообщение
CMETAHA, тогда уж http://www.mingw.org/ Хотя он а винде тормозной, ппц.
Чем он тормозной? Я этим компилятором все лабораторные в универе делал, все нормально было.
Hast вне форума  
Ответить с цитированием
Старый 07.11.2012, 11:12   #13
Пугатель
 
Аватар для [CCCP] Monster

 
Регистрация: 26.06.2005
Адрес: Москва, СССР
Сообщений: 6,102
Репутация: 1085 [+/-]
GURON27, Смотря для чего. G++ может полностью раскрыть себя только в составе unix-систем, имеет ряд существенных недостатков, вроде монолитной компоновки транслятора и недостаточных интеграционных возможностей, что не дает его использовать для развертывания сложных конструкций вроде шаблонов и не дает орагнизовать нормальную отладку, опять же, с возможностью посмотреть на данные внутри типов, использующих шаблоны.

Если тебе нужно под винду, то лучше чем Visual Studio найти невозможно. А если ты собираешься писать под DirectX11, то это вообще единственное вменяемое решение, которое позволяет внутри себя даже шейдеры отлаживать и смотреть промежуточные результаты рендеринга.

http://www.microsoft.com/visualstudi...indows-desktop

А вот как выглядит процесс отладки рендера:
http://habrahabr.ru/company/microsoft/blog/140638/
__________________
Служу Советскому Союзу!

Хорошо смеется тот, кто стреляет первым! (танкистская мудрость)
[CCCP] Monster вне форума  
Отправить сообщение для [CCCP] Monster с помощью Skype™ Ответить с цитированием
Старый 24.11.2012, 17:17   #14
Игрок
 
Аватар для PC_GAMER
 
Регистрация: 08.08.2008
Адрес: Земля
Сообщений: 914
Репутация: 234 [+/-]
"Работаю" в Borland 6 C++.
Как сделать такие же выплывающие пункты вместе с ComboBox (отметил красным)?
Скрытый текст:
__________________
Grand Theft Auto series fan.
Я буду верить, что Grand Theft Auto: Episodes from Liberty City выйдит на PC © - мечта сбылась.
Разработчикам понадобились месяцы для создания защиты. Русскому хакеру понадобился бутерброд и чашка чая для её взлома.
PC_GAMER вне форума  
Ответить с цитированием
Старый 25.11.2012, 18:43   #15
Пугатель
 
Аватар для [CCCP] Monster

 
Регистрация: 26.06.2005
Адрес: Москва, СССР
Сообщений: 6,102
Репутация: 1085 [+/-]
PC_GAMER, На 6-ке - только одним способом. Унаследоваться TWinControl и нарисовать самому. Ribbon и набор comctl32 версии 6 там просто так не подключишь.
__________________
Служу Советскому Союзу!

Хорошо смеется тот, кто стреляет первым! (танкистская мудрость)
[CCCP] Monster вне форума  
Отправить сообщение для [CCCP] Monster с помощью Skype™ Ответить с цитированием
Старый 29.11.2012, 12:19   #16
Игрок
 
Аватар для PC_GAMER
 
Регистрация: 08.08.2008
Адрес: Земля
Сообщений: 914
Репутация: 234 [+/-]
Как в Visual Studio C++ 2010 можно присвоить кнопке команду, для скроллинга списка в combobox? Подскажите, пожалуйста.
__________________
Grand Theft Auto series fan.
Я буду верить, что Grand Theft Auto: Episodes from Liberty City выйдит на PC © - мечта сбылась.
Разработчикам понадобились месяцы для создания защиты. Русскому хакеру понадобился бутерброд и чашка чая для её взлома.
PC_GAMER вне форума  
Ответить с цитированием
Старый 30.11.2012, 01:18   #17
Пугатель
 
Аватар для [CCCP] Monster

 
Регистрация: 26.06.2005
Адрес: Москва, СССР
Сообщений: 6,102
Репутация: 1085 [+/-]
PC_GAMER, CLI, WIN32, MFC?
__________________
Служу Советскому Союзу!

Хорошо смеется тот, кто стреляет первым! (танкистская мудрость)
[CCCP] Monster вне форума  
Отправить сообщение для [CCCP] Monster с помощью Skype™ Ответить с цитированием
Старый 30.11.2012, 17:24   #18
Игрок
 
Аватар для PC_GAMER
 
Регистрация: 08.08.2008
Адрес: Земля
Сообщений: 914
Репутация: 234 [+/-]
[CCCP] Monster, Visual C++ -> CLR.
__________________
Grand Theft Auto series fan.
Я буду верить, что Grand Theft Auto: Episodes from Liberty City выйдит на PC © - мечта сбылась.
Разработчикам понадобились месяцы для создания защиты. Русскому хакеру понадобился бутерброд и чашка чая для её взлома.
PC_GAMER вне форума  
Ответить с цитированием
Старый 01.12.2012, 19:52   #19
Юзер
 
Аватар для CMETAHA

 
Регистрация: 24.06.2008
Адрес: Я тут
Сообщений: 472
Репутация: 172 [+/-]
PC_GAMER, Ты даже не понял вопрос.
__________________
"Хуже вопроса не в той теме, может быть только вопрос, о вопросе не в той теме." © *@ndrey*

Контактик Щебет Лицокнижка Спроси меня Гплюс
CMETAHA вне форума  
Отправить сообщение для CMETAHA с помощью ICQ Ответить с цитированием
Старый 01.12.2012, 19:59   #20
Игрок
 
Аватар для PC_GAMER
 
Регистрация: 08.08.2008
Адрес: Земля
Сообщений: 914
Репутация: 234 [+/-]
CMETAHA, и что же я не понял?
Спросили какой условный шаблон, я и сказал какой.
__________________
Grand Theft Auto series fan.
Я буду верить, что Grand Theft Auto: Episodes from Liberty City выйдит на PC © - мечта сбылась.
Разработчикам понадобились месяцы для создания защиты. Русскому хакеру понадобился бутерброд и чашка чая для её взлома.
PC_GAMER вне форума  
Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 15:31.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Rambler's Top100 Яндекс цитирования