Среда разработки: Borland C++ 3.1
#include <iostream.h> #include <stdio.h> #include <conio.h> #include <string.h> #include <time.h> #include <stdlib.h> void igra(int popitka) { //[1] Ввод строки из файла// int i=0; char *zagadka; FILE *fp=fopen("word.txt","r"); while(!feof(fp)) {i++; fgets(zagadka,512,fp);} fclose(fp); free(fp); randomize(); i=random(i); fp=fopen("word.txt","r"); while(i) {i--; fgets(zagadka,512,fp);} fclose(fp); free(fp); //[1] char *otgadka="************************************************"; while (popitka) { clrscr(); cout << "Игра \"Виселица\""; cout << "\n /---\"; cout << "\n ¦ ¦"; cout << "\n ¦ (_)"; cout << "\n ¦"; cout << "\n ¦"; cout << "\n-----\n\n"; cout << "\nУгаданные символы: "; int ugadal=-1; i=strlen(zagadka); while(i) { i--; cout << otgadka[strlen(zagadka)-i-2]; if(otgadka[strlen(zagadka)-i-2]==zagadka[strlen(zagadka)-i-2]) ugadal++; } if (ugadal==strlen(zagadka)-1) break; cout << "\nОсталось попыток: " << popitka; cout << "\nНажмите русскую букву"; char c=getch(); cout << c << "\n"; popitka--; int wau=0; i=strlen(zagadka); while(i) {i--; if(zagadka[i]==c) { otgadka[i]=c; wau=1;}} if(wau==1) popitka++; } i=strlen(zagadka); while(i) {i--; otgadka[strlen(zagadka)-i-2]='*';} clrscr(); if(popitka==0) cout << "Вы проиграли.\n"; else cout << "Вы выиграли.\n"; cout << "\nВыберите действие: "; cout << "\n1 - Новая игра (10 попыток)"; cout << "\n2 - Продолжение игры (" << popitka <<" попыток)"; cout << "\n3 - Выход из программы"; char answer=getch(); switch(answer) { case '1':igra(10); break; case '2':igra(popitka); break; case '3':exit(0); break; } } //----------------------------------------- void main() { igra(10); }