Другие языки программирования и технологии

Помогите, задали сделать любую программу на C++ Оно должно быть не простенькое, а то ниже 2 не поставит

крестики нолики visual studio 2015

#include "stdafx.h"

#include
#include
#include
#include

using namespace std;

int main()
{
int area[3][3];
int x, y, winner = 0;
bool isTurn; //обозначает, выполнила ли ход программа
SetConsoleOutputCP(1251);
srand((unsigned)time(NULL));
//обнуление поля
for (int i = 0; i < 3; i++)
for (int j = 0; j < 3; j++)
area[i][j] = 0;
//ходы игрока и программы
for (int turn = 1; turn <= 9 && winner == 0; turn++) {
isTurn = false;
if (turn % 2 == 1) {
//ход программы
x = rand() % 3;//столбец
y = rand() % 3;//строка
if (area[y][x] == 0)
area[y][x] = 1;
else
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
x++;
if (x > 2) x = 0;
if (area[y][x] == 0) {
area[y][x] = 1;
isTurn = true;
break;
}
}
if (isTurn == true) break;
y++;
if (y > 2) y = 0;
}
//вывод игрового поля после хода программы
cout << " 1 2 3" << endl;
for (y = 0; y < 3; y++) {
cout << y + 1 << "|";
for (x = 0; x < 3; x++)
cout << area[y][x] << "|";
cout << endl;
}
}
else {
//ход игрока
isTurn = false;
while (isTurn == false) {
cout << "Введите номер строки и столбца: ";
cin >> y >> x;
if ((y > 0 && y <= 3) && (x > 0 && x <= 3))
if (area[y - 1][x - 1] == 0) {
area[y - 1][x - 1] = 2;
isTurn = true;
}
else cout << "\n!!!Указаное поле занято!!!" << endl;
else cout << "\nСтолбец и строка должны быть от 1 до 3\n";
}
//выводим игровое поле
cout << " 1 2 3" << endl;
for (y = 0; y < 3; y++) {
cout << y + 1 << "|";
for (x = 0; x < 3; x++)
cout << area[y][x] << "|";
cout << endl;
}

}
for (y = 0; y < 3; y++)
{
if (area[y][0] == area[y][1] && area[y][0] == area[y][2] && area[y][0] != 0) {
if (area[y][0] == 1)winner = 1;
else { winner = 2; }
}
}
for (x = 0; x < 3; x++)

{
if (area[0][x] == area[1][x] && area[0][x] == area[2][x] && area[x][0] != 0) {
if (area[0][x] == 1)winner = 1;
else { winner = 2; }

}
}

if (area[0][0] == area[1][1] && area[0][0] == area[2][2] != 0) { winner = area[0][0]; }
if (area[2][0] == area[2][0] && area[1][1] == area[2][0] != 0) { winner = area[2][0]; }
}
if (winner == 1)cout << "komp vigral";
if (winner == 2)cout << "vi vigrali";

_getch();
return 0;
}
НК
Николай Комисаров
110
Лучший ответ
Ниже 2 точно не поставит в любом случае.
Впервые вижу, чтобы за "не простенькое" ставили ниже два, и впервые вижу, чтобы кто-то этого хотел.
Альберт Шакиров Если будет простое - 2
"Биология 6 класс . Лабораторная работа 5"
Ну и что за препод у вас который в 6 классе требует великую программу?
Альберт Шакиров Сволочь по технологии, ну ляпнул там, вот просит теперь
#include < iostream >
#include < time.h >

using namespace std;

int main()
{
setlocale(LC_ALL, "rus");

const int n = 10;

char * first[n] = { "кошка", "утконос", "кобра", "утёнок", "ехидна", "гладиолус", "собака", "мышь", "белка", "змея" };
char * second[n] = { "старательно", "нездорово", "яростно", "звонко", "самозабвенно", "внезапно", "громко", "тихо", "быстро", "хорошо" };
char * third[n] = { "вылизывается", "живёт", "шипит", "пищит", "роет", "проростает", "лает", "скребётся", "бегает", "плавает" };

srand(time(NULL));

for (int i(0); i < n; ++i)
cout << first[rand() % n] << ' ' << second[rand() % n] << ' ' << third[rand() % n] << ';' << endl;
}
Митя .
Митя .
44 389
а компилируете вы чем?
рекомендую вот:
http://rgho.st/7X8r7V7Sy
в такой штуке можно реально крутую прогу написать на C++, причем под современную винду, а не под дос как на Turbo C++
Олег Козьмин
Олег Козьмин
1 563