Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion ist in einigen Browsern möglicherweise nicht verfügbar.
#include <cstdlib>
namespace random
{
inline const int rand(const int min, const int max)
{ return min + static_cast<int>((max - min + 1) * std::rand() / (RAND_MAX + 1.0)); }
void init(const unsigned seed)
{ static bool ready(false); if (ready == false) { std::srand(seed); ready = true; } }
}; // utility
#include <iostream>
#include <ctime>
int main()
{
random::init(static_cast<unsigned>(std::time(NULL)));
for (unsigned char i(0); i < 50; ++i)
std::cout << "X: " << random::rand(1, 5) << " Y: " << random::rand(1, 5) << "\n";
return EXIT_SUCCESS;
}
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
class Spieler {
private:
int Zufallszahl(int,int);
char Feld[5][5];
public:
void ZeigeFeld(void);
void Wasser(void);
int schiffe;
char typ; // p für pc // r für real
void TypErkennen(void);
void FeldBesetzten(void);
};
int main() {
srand(static_cast<unsigned>(time(NULL)));
Spieler spieler;
spieler.schiffe=0;
spieler.typ='r';
Spieler pc;
pc.schiffe=0;
pc.typ='p';
//Schiffsanzahl ausgeben
cout << spieler.schiffe;
cout << pc.schiffe;
/*spieler.Wasser();
spieler.FeldBesetzten();
spieler.ZeigeFeld();*/
pc.Wasser();
pc.FeldBesetzten();
pc.ZeigeFeld();
cout << endl << endl;
system("pause");
return 0;
}
void Spieler::TypErkennen(void) {
if (typ=='r') cout << "Realer Spieler";
if (typ=='p') cout << "Kuenstliche Intelligenz";
}
void Spieler::Wasser() {
for (int y=1;y<=5;y++) {
for (int x=1;x<=5;x++) {
Feld[x][y]=' ';
}
}
}
void Spieler::ZeigeFeld(void) {
if (typ=='r') {
for (int y=1;y<=5;y++) {
cout << "\n";
for (int x=1;x<=5;x++) {
cout << "[" << Feld[x][y] << "]";
}//Ende forschleife2
} //Ende forscheleife1
}//ENDE IF
if (typ=='p') {
//Computerfeldausgeben
for (int y=1;y<=5;y++) {
cout << "\n";
for (int x=1;x<=5;x++) {
cout << "[" << Feld[x][y] << "]";
}//Ende forschleife2
} //Ende forscheleife1
}//Ende if
}
void Spieler::FeldBesetzten(void) {
if (typ=='r') {
for(int i=1;i<=5;i++) {
int x,y;
cout << "x:";cin >> x;
cout << "y:";cin >> y;
Feld[x][y]='S';
}//ende for schleife
}
if (typ=='p') {
int x,y;
for(int a=1;a<=5;a++) {
x=Zufallszahl(1,5);
x=Zufallszahl(1,5);
cout << x << y;
if(Feld[x][y]==' ') Feld[x] [y]='S';
//else FeldBesetzten();
//} //Ende Forschleife
}
}
}
int Spieler::Zufallszahl(int min,int max) {
return min + static_cast<int>((max - min + 1) * rand() / (RAND_MAX + 1.0));
}
for (unsigned char x(0); x < 5; ++x)
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <string>
class Player
{
static const std::size_t field_size;
public:
enum type_t
{
ai = 0,
real
};
private:
unsigned char m_field[field_size][field_size];
unsigned int m_ships;
std::string m_name;
type_t m_type;
public:
Player(std::string const& name, type_t const& type = real)
: m_type(type), m_name(name), m_field(), m_ships(0)
{}
friend std::ostream& operator<<(std::ostream& out, Player const& data)
{ return out << "Spieler: " << data.m_name << "(" << data.show_type(out) << ")\n" << data.show_field(out); }
public:
std::ostream& show_field(std::ostream& out) const
{
for (unsigned char x(0); x < Player::field_size; ++x)
{
for (unsigned char y(0); y < Player::field_size; ++y)
out << "[" << m_field[x][y] << "]";
out << "\n";
}
return out;
}
std::ostream& show_type(std::ostream& out) const
{ return out << (m_type == ai ? "PC" : "Person"); }
public:
inline void reset_field()
{ std::memset(m_field, 0, sizeof(unsigned char) * Player::field_size * Player::field_size); }
void get_position()
{
std::size_t x(0);
std::size_t y(0);
if (m_type == real)
{
std::cout << "X-Koordinate: ";
std::cin >> x;
std::cout << "Y-Koordinate: ";
std::cin >> y;
}
else // type == ai
{
x = random_position(0, Player::field_size - 1);
y = random_position(0, Player::field_size - 1);
}
if (m_field[x][y] == ' ')
m_field[x][y] = 'S';
else
get_position();
}
private:
inline const std::size_t random_position(const std::size_t min, const std::size_t max)
{ return min + static_cast<int>((max - min + 1) * std::rand() / (RAND_MAX + 1.0)); }
};
const std::size_t Player::field_size = 5;
int main()
{
std::srand(static_cast<unsigned>(std::time(NULL)));
std::vector<Player> players;
players.push_back(Player("Detlev"));
players.push_back(Player("Dieter", Player::ai));
std::copy(players.begin(), players.end(), std::ostream_iterator<Player>(std::cout, "\n"));
players[0].get_position();
players[1].get_position();
std::copy(players.begin(), players.end(), std::ostream_iterator<Player>(std::cout, "\n"));
std::cin.ignore();
}