Форум программистов, компьютерный форум CyberForum.ru

Необходимо указать на ошибки. Код по заданию из книги. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сбор release версии программы с++, на MinGW http://www.cyberforum.ru/cpp-beginners/thread342545.html
Есть такая проблема: компилирую программу из под Windows 7, на MinGW g++ -o test.exe test.cpp например. Я не пользуюсь средами, так как они мне пока не нужны, и все компилирую с консоли. Проблема в том что таким образом откомпилированная программа не запускается на Windows xp. Я знаю что в средах Visual Studio или Borland можно поставить галочку release, и тогда программа будет работать...
C++ Тема для диплома Помогите подобрать тему для дипломной работы! Хочу чтобы диплом включал в себя возможность показать знание язака программирования,а также чтобы в нем была задействованна практическая предметная область.Думаю написать экспертную систему. Хотелось бы услышать ваше мнение! http://www.cyberforum.ru/cpp-beginners/thread342534.html
Итератор ? C++
Как выглядит итератор на вложеный контейнер? Например осуществить доступ к 1-му символу 3-го элемента в векторе vector< <vecrot<char> > vec через индекс можно так vec. А как через итератор?
C++ В идентификаторе минимальной длины определить количество букв
Вообщем это пример который дали в методичке по с++ но он нифига не работает, сам я фигово пока понимаю в С++ только начинаю его изучать я заочник, люди можите исправить его чтоб работал этот пример, просто хочется по шаблону рабочему более менее подъучить азы, а потом уже глубже изучать мне так всегда проще было, заранее спасибо. а компилирую и запускаю в компиляторе с++ трубо . // Задана...
C++ fstream с++ http://www.cyberforum.ru/cpp-beginners/thread342494.html
Помогите пожалуйста... Как при считывании из файла считать переменные если они в файле находяться на разных строчках например надо считать a,b а они в файле записаны так: 1 2 переделайте пожалуйста эту программу чтобы она считывала не с одной строчки а с двух...
C++ Алгоритм Дейкстры Всем доброго времени суток! Решал я задачу на ацмп про алгоритм Дейкстры. http://********/?main=task&id_task=132 Но зараза заваливается на 8 тесте. Не могли бы вы сказать в чем дело? #include <fstream> #include <algorithm> #include <vector> #include <iostream> int main() { //********************************************************************** int... подробнее

Показать сообщение отдельно
vaskiss
 Аватар для vaskiss
101 / 19 / 5
Регистрация: 16.08.2011
Сообщений: 203
16.08.2011, 17:22     Необходимо указать на ошибки. Код по заданию из книги.
Начал учить c++ по книге.
Компилирую под debian в g++.
Поскольку я почти ничего не смыслю в программировании, то мне необходима помощь тех, кто бы смог тыкнуть носом в ошибки.
Задание в книге было такое: написать программу, где бы использовался цикл while.
Замечания интересны все, от комментариев и имен переменных до синтаксиса и ошибок в коде.
P.S. все это компилируется и работает =)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
#include <iostream>
#include <cstdlib> 
#include <ctime>
using namespace std;
int main()
{
// генерим все время разные числа
srand((unsigned)time(NULL)); 
// действия моба
int dmdMob, healMob, dmdOrHeal;
//Действия игрока
int dmdPlayerAxe, dmdPlayer;
float useAttackShild, useDefendShild;
//число вводимое пользователем
int dmg;
//Статы игрока
int helthMob = 100, energyPlayer = 0;
//Статы моба
int helthPlayer = 100;
 
while ((helthMob > 0)&&(helthPlayer > 0))
{
cout << "Меч [1], Топор [2], Берсерк [3], Щит [4]" << "\n";
cin >> dmg;
//Включаем щит
if (dmg == 4)
{
cout << "Вы использовали щит. [-40%] к аттаке [+60%] защите \n";
useAttackShild = 0.4;
useDefendShild = 0.6;
cin >> dmg;
}
else
{
useAttackShild = 1.0;
useDefendShild = 1.0; 
}
//Удар мечем
if (dmg == 1)
{
  dmdPlayer = 3+6;
  dmdPlayer = dmdPlayer * useAttackShild;
  energyPlayer = energyPlayer + 1;
  helthMob = helthMob - dmdPlayer;
  cout << "Вы нанесли удар МЕЧЕМ с уроном \t" << dmdPlayer << "\n";
  cout << "Враг еще жив на \t+" << helthMob << "+HP \n";
  cout << "Ваша энергия \t (" << energyPlayer << ")\n";
}
 
else 
{
//Удар топором
 if (dmg == 2)
 {
  dmdPlayerAxe=rand()% 90;
  helthMob = helthMob - dmdPlayerAxe;
  cout << "Вы нанесли удар ТОПОРОМ с уроном \t" << dmdPlayerAxe << "\n";
  cout << "Враг еще жив на \t+" << helthMob << "+HP \n";
 }
 else
 {
//Берсеркер
  if (dmg == 3)
  {
   if ((energyPlayer == 10) || (energyPlayer > 10))
   {
    energyPlayer = energyPlayer - 10;
    helthMob = helthMob - 30;
    cout << "Вы нанесли удар БЕРСЕРК \t \n";
    cout << "Враг еще жив на \t+" << helthMob << "+HP \n";
   }
   else
   {
   cout << "не достаточно энергии \n";
   }
  }
  else
  {
  cout << "не верная клавиша \n";
  }
 } 
}
//Ход моба
//Вычесляем действие
dmdOrHeal = rand()% 2+0;
 
if (dmdOrHeal == 0)
//Атака
{
 dmdMob=rand()% 7+2;
 dmdMob = dmdMob * useDefendShild;
 helthPlayer = helthPlayer - dmdMob;
 cout << "Вам нанесен урон \t" << dmdMob << "\n";
 cout << "У вас осталось \t+" << helthPlayer << "+HP \n";
}
//Хилл
else
{
 healMob = rand()% 21+1;
 helthMob = helthMob + healMob;
  if (helthMob > 100)
  {
  helthMob = 100;
  }
  else
  {
  cout << "Моб хильнул себя на \t+" << healMob << "+HP \n";
  cout << "Враг еще жив на \t+" << helthMob << "+HP \n";
  cout << "У вас осталось \t+" << helthPlayer << "+HP \n";
  }
}
 
}
}
P.P.S Заранее спасибо.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 07:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru