rumit, странный вопрос. php - это серверный язык, c++ - програмный. ядро php на c++ написано.
Blade (17.02.2012/11:58)
rumit, странный вопрос. php - это серверный язык, c++ - програмный. ядро php на c++ написано.
извини за глупый вопрос,так как нет знания !что посоветуеш,с чего начать ,чтобы научиться скрипты писать ,вот думаю скачать книжку по пхп
rumit, качай php учебник или видео уроки
научился самым основам языка, написал крестики нолики на двоих =)
#include <iostream>
using namespace std;
int enterData(void) // функция ввода данных
{
int n;
cout << "Введите число ";
cin >> n;
return n;
}
void printM(char mass[3][3]) // функция вывода массива
{
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
if(j == 2)
cout << mass[i][j];
else
cout << mass[i][j] << "|";
}
cout << endl;
}
}
int winer(char mass[3][3], int x, int y) // функция проверки на победителя
{
if( (mass[x][0] == mass[x][1]) && (mass[x][0] == mass[x][2]) ) // проверка строк
{
cout << endl << endl << mass[x][0] << " победил!";
return 1;
}
if( (mass[0][y] == mass[1][y]) && (mass[0][y] == mass[2][y]) ) // проверка столбцов
{
cout << endl << endl << mass[0][y] << " победил!";
return 1;
}
if( (mass[0][0] == mass[1][1]) && (mass[0][0] == mass[2][2]) && mass[0][0] != ' ') // проверка диагонали 1
{
cout << endl << endl << mass[0][0] << " победил!";
return 1;
}
if( (mass[2][0] == mass[1][1]) && (mass[2][0] == mass[0][2]) && mass[2][0] != ' ') // проверка диагонали 2
{
cout << endl << endl << mass[2][0] << " победил!";
return 1;
}
}
int nowin(char mass[3][3]) // функция проверки на ничью
{
for (int i = 0; i < 3; i++)
for (int j = 0; j < 3; j++)
if(mass[i][j] == ' ') // если хоть одно из полей пустое возвращаем ноль
return 0;
return 1; // tсли все поля заняты возвращаем 1
}
int main()
{
setlocale(0,"Rus");
cout << "Крестики нолики" << endl;
cout << "____________________________________________________________" << endl;
cout << "0|1|2" << endl << "3|4|5" << endl << "6|7|8" << endl << endl;
int n = 1; // счетчик ходов
char board[3][3]; // игровое поле
for (int i = 0; i < 3; i++) // заполняем игровое поле пробелами
for (int j = 0; j < 3; j++)
board[i][j] = ' ';
while(true) // цикл до конца игры
{
int choise = enterData(); // вводим число
if (choise > 8 || choise < 0) // проверяем подходит ли оно нам
{
cout << "Ошибка!!!\n\n";
continue;
}
int y = choise % 3; // получаем икс
int x = choise / 3; // получаем игрик
if(board[x][y] == ' '){ // проверяем свободна ли координата
if(n % 2 == 0) // выбираем что ставить икс или игрик
board[x][y] = 'X';
else
board[x][y] = '0';
}
else // выводим ошибку если координата занята
{
if(nowin(board) == 1) // если функция вернула 1 пишем ничья
{
cout << "Ничья!!!\n";
break;
}
else // иначе выдаем ошибку
{
cout << "Ошибка!!!\n\n";
continue;
}
}
printM(board); // выводим игровое поле
if (winer(board, x, y) == 1) // проверка победителя
break;
n++;
}
return 0;
}
мда, тупанул, когда писал =)
переделал ничью, что еще можно поправить?
#include <iostream>
using namespace std;
int enterData(void) // функция ввода данных
{
int n;
cout << "Введите число ";
cin >> n;
return n;
}
void printM(char mass[3][3]) // функция вывода массива
{
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
if(j == 2)
cout << mass[i][j];
else
cout << mass[i][j] << "|";
}
cout << endl;
}
}
int winer(char mass[3][3], int x, int y) // функция проверки на победителя
{
if( (mass[x][0] == mass[x][1]) && (mass[x][0] == mass[x][2]) ) // проверка строк
{
cout << endl << endl << mass[x][0] << " победил!";
return 1;
}
if( (mass[0][y] == mass[1][y]) && (mass[0][y] == mass[2][y]) ) // проверка столбцов
{
cout << endl << endl << mass[0][y] << " победил!";
return 1;
}
if( (mass[0][0] == mass[1][1]) && (mass[0][0] == mass[2][2]) && mass[0][0] != ' ') // проверка диагонали 1
{
cout << endl << endl << mass[0][0] << " победил!";
return 1;
}
if( (mass[2][0] == mass[1][1]) && (mass[2][0] == mass[0][2]) && mass[2][0] != ' ') // проверка диагонали 2
{
cout << endl << endl << mass[2][0] << " победил!";
return 1;
}
}
int main()
{
setlocale(0,"Rus");
cout << "Крестики нолики" << endl;
cout << "____________________________________________________________" << endl;
cout << "0|1|2" << endl << "3|4|5" << endl << "6|7|8" << endl << endl;
char board[3][3]; // игровое поле
for (int i = 0; i < 3; i++) // заполняем игровое поле пробелами
for (int j = 0; j < 3; j++)
board[i][j] = ' ';
int n = 1; // счетчик ходов
while(true) // цикл до конца игры
{
if(n > 9) // если ходов больше 9 прерываем цикл (ничья)
break;
int choise = enterData(); // вводим число
if (choise > 8 || choise < 0) // проверяем подходит ли оно нам
{
cout << "Ошибка!!!\n\n";
continue;
}
int y = choise % 3; // получаем икс
int x = choise / 3; // получаем игрик
if(board[x][y] == ' '){ // проверяем свободна ли координата
if(n % 2 == 0) // выбираем что ставить икс или игрик
board[x][y] = 'X';
else
board[x][y] = '0';
}
else // выводим ошибку если координата занята
{
cout << "Ошибка!!!\n\n";
continue;
}
printM(board); // выводим игровое поле
if (winer(board, x, y) == 1) // проверка победителя
break;
n++;
}
return 0;
}
nan4ik, Если какой то знаеш язык, то не очень.