صفحه 5 از 8 اولاول ... 34567 ... آخرآخر
نمایش نتایج 161 تا 200 از 320

نام تاپیک: مجموعه برنامه های نوشته شده به زبان C و ++C

  1. #161
    کاربر تازه وارد آواتار ali najafi
    تاریخ عضویت
    دی 1389
    محل زندگی
    قم
    پست
    68

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    برنامه ای که بورد گرافیکی سیستم را تشخیص داده و محدوده ی وجه گرافیکی آن را تایین میکند.
    کتاب آموزش برنامه نویسی به زبان سی،مهندس عین ا.. جعفر نژاد قمی
    #include "graphics.h"
    #include "stdio.h"
    int main(void)
    {
    int driver,mode;
    int far *high,*low ;
    driver=DETECT;
    initgraph(&driver,&mode,"") ;
    getmoderange(driver,low,high);
    printf("\nmode range: %d-%d",low,high);
    return 0;
    }



  2. #162
    کاربر تازه وارد آواتار ali najafi
    تاریخ عضویت
    دی 1389
    محل زندگی
    قم
    پست
    68

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    برنامه ای که تعداد رنگ های قابل استفاده در وجه گرافیکی تایین شده توسط ()initgraph را مشخص میکند.
    کتاب آموزش برنامه نویسی به زبان سی،مهندس عین ا.. جعفر نژاد قمی
    #include "graphics.h"
    #include "stdio.h"
    #include "conio.h"
    int main(void)
    {
    int driver,mode;
    struct palettetype p;
    driver=DETECT;
    mode=0;
    initgraph(&driver,&mode," ");
    getpalette(&p);
    printf("\n number of color in ") ;
    printf(" palette:%d",p.size);
    getch();
    restorecrtmode();
    return 0;
    }

  3. #163
    کاربر تازه وارد آواتار ali najafi
    تاریخ عضویت
    دی 1389
    محل زندگی
    قم
    پست
    68

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    برنامه ای که مفسر کامل بیسیک را پیاده سازی میکند
    کتاب آموزش برنامه نویسی به زبان سی،مهندس عین ا.. جعفر نژاد قمی
    #include <stdlib.h>
    #include <conio.h>
    #include <setjmp.h>
    #include <math.h>
    #include <ctype.h>
    #include <stdio.h>
    #include <string.h>

    #define NUM_LAB 100
    #define LAB_LEN 10
    #define FOR_NEST 25
    #define SUB_NEST 25
    #define PROG_SIZE 10000
    #define DELIMITER 1
    #define VARIABLE 2
    #define NUMBER 3
    #define COMMAND 4
    #define STRING 5
    #define QUOTE 6

    #define PRINT 1
    #define INPUT 2
    #define IF 3
    #define THEN 4
    #define FOR 5
    #define NEXT 6
    #define TO 7
    #define GOTO 8
    #define EOL 9
    #define FINISHED 10
    #define GOSUB 11
    #define RETURN 12
    #define END 13
    int load_program(char *p ,char *fname);
    char get_token();
    void assignment();
    int get_next_label(char *s);
    int iswhite(char c);
    int isdelim(char c);
    char look_up(char *s);
    int find_var(char *s);
    char *gpop();
    char *find_label(char *s);
    struct for_stack fpop() ;
    void print() , scan_labels() , find_eol(),exec_goto() ;
    void exec_if() , exec_for(), next() ,fpush(struct for_stack i) ,input() ;
    void gosub() , greturn() , gpush(char *s) , label_init() ;
    void putback() , serror(int) , get_exp(int *) , primitive(int *result) ;
    void level2(int *), level3(int *), level4(int *), level5(int *), level6(int *);
    void arith(char o , int *r , int *h) , unary(char o , int *r) ;

    char *prog ;
    jmp_buf e_buf ;
    int variable[26] = {0} ;
    struct commands {
    char commands[20] ;
    char tok ;
    } table[] = {
    "print", PRINT, "input", INPUT, "if",IF,
    "then", THEN, "goto", GOTO, "for", FOR ,
    "next", NEXT , "to", TO , "gosub", GOSUB ,
    "return", RETURN , "end", END , "", END } ;
    char token[80], token_type, tok ;
    struct label {
    char name[LAB_LEN] ;
    char *p ;
    } ;
    struct label label_table[NUM_LAB] ;

    struct for_stack {
    int var ;
    int target ;
    char * loc ;
    } fstack[FOR_NEST] ;
    char *gstack[SUB_NEST] ;
    int ftos, gtos ;

    int main(int argc, char *argv[])
    {
    char in[80] ;
    int answer ;
    char *p_buf , *t ;
    clrscr();
    if(argc != 2)
    {
    printf("\n usage : run < filename > ") ;
    getch() ;
    exit(1) ;
    }
    p_buf = (char *) malloc(PROG_SIZE) ;
    if(!p_buf)
    {
    printf("\n allocation failure ") ;
    getch() ;
    exit(1) ;
    }
    if(!load_program(p_buf, argv[1]))
    {
    printf("\n file not loaded ") ;
    getch() ;
    exit(1) ;
    }
    if(setjmp(e_buf))
    exit(1) ;
    prog = p_buf ;
    scan_labels() ;
    ftos = 0 ;
    gtos = 0 ;
    do {
    token_type = get_token() ;
    if(token_type == VARIABLE) {
    putback() ;
    assignment() ;
    }
    else
    switch(tok) {
    case PRINT :
    print() ; break ;
    case GOTO :
    exec_goto() ; break ;
    case IF :
    exec_if() ; break ;
    case FOR :
    exec_for() ; break ;
    case NEXT :
    next() ; break ;
    case INPUT :
    input() ; break ;
    case GOSUB :
    gosub() ; break ;
    case RETURN :
    greturn() ; break ;
    case END :
    exit(0) ;
    }
    } while (tok != FINISHED) ;
    free(p_buf) ;
    return 0;
    }
    //************
    int load_program(char *p , char *fname)
    {
    FILE *fp ;
    int i = 0 ;
    fp = fopen(fname, "rb") ;
    if(!fp)
    return 0 ;
    i = 0 ;
    do {
    *p = getc(fp) ;
    p++ ; i++ ;
    } while(!feof(fp) && i < PROG_SIZE) ;
    *(p - 2) = '\0' ;
    fclose(fp) ;
    return 1 ;
    }
    //****************
    void assignment()
    {
    int var , value ;
    get_token() ;
    if(!isalpha(*token)) {
    serror(4) ;
    return ;
    }
    var = toupper(*token) - 'A';
    get_token() ;
    if(*token != '=') {
    serror(3) ;
    return ;
    }
    get_exp(&value) ;
    variable[var]=value ;
    }
    //****************
    void print()
    {
    int answer , len=0 , spaces ;
    char last_delim ;
    do {
    get_token() ;
    if(tok == EOL || tok == FINISHED)
    break ;
    if(token_type == QUOTE) {
    printf(token) ;
    len += strlen(token) ;
    get_token() ;
    }
    else {
    putback() ;
    get_exp(&answer) ;
    get_token() ;
    len += printf("%d",answer) ;
    }
    last_delim=*token ;
    if(*token == ';') {
    spaces = 8 - (len % 8) ;
    len += spaces ;
    while(spaces) {
    printf(" ") ;
    spaces -- ;
    }
    }
    else if(*token == ',') ;//do nothing
    else if(tok != EOL && tok != FINISHED)
    serror(0) ;
    } while(*token == ';' || *token == ',') ;
    if(tok == EOL || tok == FINISHED) {
    if(last_delim != ';' && last_delim !=',')
    printf("\n") ;
    }
    else serror(0) ;
    }
    //*************************
    void scan_labels()
    {
    int addr ;
    char *temp ;
    label_init() ;
    temp = prog ;
    get_token() ;
    if(token_type == NUMBER) {
    strcpy(label_table[0].name, token) ;
    label_table[0].p = prog ;
    }
    find_eol() ;
    do {
    get_token() ;
    if(token_type == NUMBER) {
    addr = get_next_label(token) ;
    if(addr == -1 || addr == -2) {
    (addr == -1) ? serror(5) : serror(6) ;
    } //end of if
    strcpy(label_table[addr].name , token) ;
    label_table[addr].p = prog ;
    }//end of if
    if(tok !=EOL)
    find_eol() ;
    } while(tok != FINISHED) ;
    prog = temp ;
    }
    //******************
    void find_eol()
    {
    while(*prog != '\n' && *prog != '\0')
    ++prog ;
    if(*prog)
    prog ++ ;
    }
    //******************
    int get_next_label(char *s)
    {
    register int t ;
    for(t = 0 ; t < NUM_LAB ; t++) {
    if(label_table[t].name[0] == 0)
    return t ;
    if(!strcmp(label_table[t].name,s))
    return -2 ;
    } //end of for
    return -1 ;
    }
    //*********************
    char *find_label(char *s)
    {
    register int t ;
    for(t = 0 ; t < NUM_LAB ; t++)
    if(!strcmp(label_table[t].name, s))
    return label_table[t].p ;
    return '\0' ;
    }
    //******************
    void exec_goto()
    {
    char *loc ;
    get_token() ;
    loc = find_label(token) ;
    if(loc == '\0')
    serror(7) ;
    else prog = loc ;
    }
    //*******************
    void label_init()
    {
    register int t ;
    for(t = 0 ; t < NUM_LAB ; t++)
    label_table[t].name[0] = '\0' ;
    }
    //*********************
    void exec_if()
    {
    int x , y , cond ;
    char op ;
    get_exp(&x) ;
    get_token() ;
    if(!strchr("=<>", *token)) {
    serror(0) ;
    return ;
    }
    op = *token ;
    get_exp(&y) ;
    cond = 0 ;
    switch(op) {
    case '<' :
    if(x < y) cond=1 ;
    break ;
    case '>' :
    if(x > y) cond=1 ;
    break ;
    case '=' :
    if(x == y) cond=1 ;
    break ;
    }//end of switch
    if(cond) {
    get_token() ;
    if(tok != THEN) {
    serror(8) ;
    return ;
    }
    }//end of if
    else find_eol() ;
    }
    //********************
    void exec_for()
    {
    struct for_stack i ;
    int value ;
    get_token() ;
    if(!isalpha(*token)) {
    serror(4) ;
    return ;
    }
    i.var = toupper(*token) - 'A' ;
    get_token() ;
    if(*token != '=') {
    serror(3) ;
    return ;
    }
    get_exp(&value) ;
    variable[i.var] = value ;
    get_token() ;
    if(tok != TO) serror(9) ;
    get_exp(&i.target) ;
    if(value >= variable[i.var]) {
    i.loc = prog ;
    fpush(i) ;
    }
    else
    while(tok!=NEXT) get_token() ;
    }
    //***************************
    void next()
    {
    struct for_stack i ;
    i = fpop() ;
    variable[i.var]++ ;
    if(variable[i.var] > i.target) return ;
    fpush(i);
    prog = i.loc ;
    }
    //***********************
    void fpush(struct for_stack i)
    {
    if(ftos > FOR_NEST)
    serror(10) ;
    fstack[ftos] = i ;
    ftos++ ;
    }
    //*********************
    struct for_stack fpop()
    {
    ftos -- ;
    if(ftos < 0) serror(11);
    return(fstack[ftos]);
    }
    //***********************
    void input()
    {
    char str[80], var ;
    int i , ch , digit = 0 ;
    get_token() ;
    if(token_type == QUOTE) {
    printf(token) ;
    get_token() ;
    if(*token != ',') {
    serror(1) ;
    }
    get_token() ;
    }
    else printf("?") ;
    var = toupper(*token) - 'A' ;
    while(1) {
    ch = getche() ;
    if(ch <= 57 && ch >= 48) {
    ch = ch - 48 ;
    digit = (digit * 10) + ch ;
    }
    else if(ch == 13)
    break ;
    else {
    printf("\Redo from start ?\n") ;
    continue ;
    }
    }//end of while
    variable[var]=digit ;
    }
    //**************
    void gosub()
    {
    char *loc ;
    get_token() ;
    loc = find_label(token) ;
    if(loc == '\0')
    serror(7) ;
    else {
    gpush(prog) ;
    prog = loc ;
    }//end of else
    }
    //********************
    void greturn()
    {
    prog = gpop() ;
    }
    //**************
    void gpush(char *s)
    {
    gtos++ ;
    if(gtos == SUB_NEST) {
    serror(12) ;
    return ;
    }
    gstack[gtos] = s ;
    }
    //*******************
    char *gpop()
    {
    if(gtos == 0) {
    serror(13) ;
    return 0 ;
    } //end of return
    return(gstack[gtos --]) ;
    }
    //*****************
    void putback()
    {
    char *t ;
    t = token ;
    for(; *t ; t++)
    prog -- ;
    }
    //*****************
    void serror(int error)
    {
    static char *e[] = {
    "syntax error ",
    "un balanced parantheses",
    "no expressoin present" ,
    "equals sign expexted" ,
    "not a variable" ,
    "label table full" ,
    "dulicate label" ,
    "undifined label" ,
    "THEN expected" ,
    "TO expected" ,
    "too many nested FOR loops" ,
    "NEXT without FOR" ,
    "too many nested GOSUB",
    "RETURN without GOSUB" } ;
    printf("\n %s \n", e[error]) ;
    longjmp(e_buf , 1) ;
    }
    //*****************
    char get_token()
    {
    register char *temp ;
    token_type = 0 ;
    tok = 0 ;
    temp = token ;
    if(*prog == '\0') {
    *token = 0 ;
    tok = FINISHED ;
    return(token_type = DELIMITER) ;
    }//end of if
    while(iswhite(*prog))
    ++ prog ;
    if(*prog == '\r') {
    ++ prog ;
    ++ prog ;
    tok = EOL ;
    *token = '\r' ;
    token[1] = '\n' ;
    token[2] = 0 ;
    return(token_type = DELIMITER) ;
    }
    if(strchr("+-*^/%=;(),><" , *prog)) {
    *temp=*prog ;
    prog ++ ;
    temp ++ ;
    *temp = 0 ;
    return(token_type = DELIMITER) ;
    }
    if(*prog == '"') {
    prog ++ ;
    while(*prog != '"' && *prog != '\r')
    *temp ++ = *prog ++ ;
    if(*prog == '\r')
    serror(1) ;
    prog ++ ;
    *temp = 0 ;
    return(token_type = QUOTE) ;
    } //end of if
    if(isdigit(*prog)) {
    while(!isdelim(*prog))
    *temp ++= *prog ++ ;
    *temp='\0' ;
    return(token_type=NUMBER) ;
    }
    if(isalpha(*prog)) {
    while(!isdelim(*prog))
    *temp ++= *prog ++ ;
    token_type = STRING ;
    }
    *temp='\0' ;
    if(token_type == STRING) {
    tok = look_up(token) ;
    if(!tok)
    token_type = VARIABLE ;
    else
    token_type = COMMAND ;
    }
    return token_type ;
    }
    //******************
    char look_up(char *s)
    {
    register int i , j ;
    char *p ;
    p = s ;
    while(*p) {
    *p = tolower(*p) ;
    p ++ ;
    }
    for( i= 0 ; *table[i].commands ; i++)
    if(!strcmp(table[i].commands , s))
    return table[i].tok ;
    return 0 ;
    }
    //************
    int isdelim(char c)
    {
    if(strchr(" ;,+-<>/*%^=()",c) || c == 9 ||
    c=='\r' || c==0)
    return 1 ;
    return 0 ;
    }
    //**************
    int iswhite(char c)
    {
    if(c == ' ' || c == '\t')
    return 1 ;
    else
    return 0 ;
    }
    //***********************
    void get_exp(int *result)
    {
    get_token() ;
    if(!*token) {
    serror(2) ;
    return ;
    }
    level2(result) ;
    putback() ;
    }
    //**********************
    void level2(int *result)
    {
    register char op ;
    int hold ;
    level3(result) ;
    while((op = *token) == '+' || op == '-') {
    get_token() ;
    level3(&hold) ;
    arith(op , result , &hold) ;
    }//end of while
    }
    //***************************
    void level3(int * result)
    {
    register char op ;
    int hold ;
    level4(result) ;
    while((op = *token) == '*' || op == '/' || op == '%')
    {
    get_token() ;
    level4(&hold) ;
    arith(op , result , &hold) ;
    } //end of while
    }
    //******************
    void level4(int * result)
    {
    int hold ;
    level5(result) ;
    if(*token == '^') {
    get_token() ;
    level4(&hold) ;
    arith('^' , result , &hold) ;
    }
    }
    //********************
    void level5(int *result)
    {
    register char op ;
    op = 0 ;
    if((token_type == DELIMITER) && *token == '+' || *token == '-')
    {
    op = *token ;
    get_token() ;
    }
    level6(result) ;
    if(op)
    unary(op , result) ;
    }
    //*******************************
    void level6(int *result)
    {
    if((*token == '(') &&(token_type == DELIMITER))
    {
    get_token() ;
    level2(result) ;
    if(*token != ')')
    serror(1) ;
    get_token() ;
    }
    else
    primitive(result) ;
    }
    //***********************
    void primitive(int *result)
    {
    switch(token_type) {
    case VARIABLE :
    *result = find_var(token) ;
    get_token() ;
    return ;
    case NUMBER :
    *result = atoi(token) ;
    get_token() ;
    return ;
    default :
    serror(0) ;
    }//end of switch
    }
    //*********************
    void arith(char o , int *r , int *h)
    {
    register int t , ex ;
    switch(o) {
    case '-' :
    *r = *r - *h ;
    break ;
    case '+' :
    *r=*r + *h ;
    break ;
    case '*' :
    *r=*r * *h ;
    break ;
    case '/' :
    *r=(*r) / (*h) ;
    break ;
    case '%' :
    t = (*r) / (*h) ;
    *r = *r - (t * (*h)) ;
    break ;
    case '^' :
    ex = *r ;
    if(*h == 0) {
    *r = 1 ;
    break ;
    }
    for(t = *h - 1 ; t > 0 ; -- t)
    *r=(*r) * ex ;
    break ;
    }//end of switch
    }
    //*************************
    void unary(char o , int *r)
    {
    if(o == '-')
    *r = -(*r) ;
    }
    //***************
    int find_var(char *s)
    {
    if(!isalpha(*s)) {
    serror(4) ;
    return 0 ;
    }
    return variable[toupper(*token)-'A'] ;
    }
    //**********************














  4. #164
    کاربر دائمی آواتار V0RTEX
    تاریخ عضویت
    آذر 1389
    محل زندگی
    kernel
    پست
    106

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    اگه x-o نیست این هم x-o که با کامپیوتر هم میشه بازی کنه کامپالر هم VS 2010 می باشد

    #include <iostream>
    #include <time.h>
    #include <stdlib.h>
    #include <string>
    #include <vector>
    using namespace std;

    void DisplayBoard(char BoardArray[]);
    int CheckGameOver(char BoardArray[]);
    void ResetBoard(char* BoardArray[]);
    int could_win(char BoardArray[],char Player);
    int AI_Move(char BoardArray[],char AI,char player);//A.I
    int main()
    {
    int Player1Move = 0;
    int Player2Move = 0;
    char BoardArray[9] = {' ',' ',' ',' ',' ',' ',' ',' ',' '};
    char BoardNumbers[9] = {'0','1','2','3','4','5','6','7','8'};
    system("cls");
    cout << "if you want AI move instead of you press 9"<<endl;
    system("pause");
    while(true)
    {
    system("cls");
    DisplayBoard(BoardNumbers);
    DisplayBoard(BoardArray);

    cout << "X:";
    cin >> Player1Move;
    if(Player1Move ==9)
    Player1Move =AI_Move(BoardArray,'X','O');

    if((Player1Move >= 0 && Player1Move <=8) && BoardArray[Player1Move] == ' ')
    {
    BoardArray[Player1Move] = 'X';
    }
    else
    {
    cout << "Error in move...Press enter\n";
    system("PAUSE > NULL");
    continue;
    }

    system("cls");
    DisplayBoard(BoardNumbers);
    DisplayBoard(BoardArray);

    switch(CheckGameOver(BoardArray))
    {
    case 0:
    break;
    case 1:
    cout << "TIE! Press enter to play again!";
    system("PAUSE > NULL");
    for(int n = 0; n <= 8; n++)
    {
    BoardArray[n] = ' ';
    }
    continue;
    case 2:
    cout << "X wins! Press enter to play again!";
    system("PAUSE > NULL");
    for(int n = 0; n <= 8; n++)
    {
    BoardArray[n] = ' ';
    }
    continue;
    case 3:
    cout << "O wins! Press enter to play again!";
    system("PAUSE > NULL");
    for(int n = 0; n <= 8; n++)
    {
    BoardArray[n] = ' ';
    }
    continue;
    }

    cout << "O:";
    Player2Move=AI_Move(BoardArray,'O','X');
    // cin >> Player2Move;

    if((Player2Move >= 0 && Player2Move <=8) && BoardArray[Player2Move] == ' ')
    {
    BoardArray[Player2Move] = 'O';
    }
    else
    {
    cout << "Error in move...Press enter\n";
    system("PAUSE > NULL");
    continue;
    }

    DisplayBoard(BoardArray);

    switch(CheckGameOver(BoardArray))
    {
    case 0:
    break;
    case 1:
    cout << "TIE! Press enter to play again!";
    system("PAUSE > NULL");
    for(int n = 0; n <= 8; n++)
    {
    BoardArray[n] = ' ';
    }
    continue;
    case 2:
    cout << "X wins! Press enter to play again!";
    system("PAUSE > NULL");
    for(int n = 0; n <= 8; n++)
    {
    BoardArray[n] = ' ';
    }
    continue;
    case 3:
    cout << "O wins! Press enter to play again!";
    system("PAUSE > NULL");
    for(int n = 0; n <= 8; n++)
    {
    BoardArray[n] = ' ';
    }
    continue;
    }

    }
    return 0;
    }
    void DisplayBoard(char BoardArray[])
    {
    cout << " | | \n";
    cout << " " << BoardArray[0] << " | " << BoardArray[1] << " | " << BoardArray[2] << "\n";
    cout << "____|____|____\n";
    cout << " | | \n";
    cout << " " << BoardArray[3] << " | " << BoardArray[4] << " | " << BoardArray[5] << "\n";
    cout << "____|____|____\n";
    cout << " | | \n";
    cout << " " << BoardArray[6] << " | " << BoardArray[7] << " | " << BoardArray[8] << "\n";
    cout << " | | \n\n";
    }
    int CheckGameOver(char BoardArray[])
    {
    bool Tie = false;
    bool Player1Win = false;
    bool Player2Win = false;
    int ErrorCode = 0;

    for(int n = 0; n <= 8; n++)
    {
    if(BoardArray[n] == ' ')
    {
    Tie = false;
    break;
    }
    else
    {
    Tie = true;
    }
    }

    if(BoardArray[0] == 'X' && BoardArray[3] == 'X' && BoardArray[6] == 'X')
    {
    Player1Win = true;
    }
    if(BoardArray[0] == 'X' && BoardArray[1] == 'X' && BoardArray[2] == 'X')
    {
    Player1Win = true;
    }
    if(BoardArray[2] == 'X' && BoardArray[5] == 'X' && BoardArray[8] == 'X')
    {
    Player1Win = true;
    }
    if(BoardArray[6] == 'X' && BoardArray[7] == 'X' && BoardArray[8] == 'X')
    {
    Player1Win = true;
    }
    if(BoardArray[0] == 'X' && BoardArray[4] == 'X' && BoardArray[8] == 'X')
    {
    Player1Win = true;
    }
    if(BoardArray[2] == 'X' && BoardArray[4] == 'X' && BoardArray[6] == 'X')
    {
    Player1Win = true;
    }
    if(BoardArray[1] == 'X' && BoardArray[4] == 'X' && BoardArray[7] == 'X')
    {
    Player1Win = true;
    }
    if(BoardArray[3] == 'X' && BoardArray[4] == 'X' && BoardArray[5] == 'X')
    {
    Player1Win = true;
    }


    if(BoardArray[0] == 'O' && BoardArray[3] == 'O' && BoardArray[6] == 'O')
    {
    Player2Win = true;
    }
    if(BoardArray[0] == 'O' && BoardArray[1] == 'O' && BoardArray[2] == 'O')
    {
    Player2Win = true;
    }
    if(BoardArray[2] == 'O' && BoardArray[5] == 'O' && BoardArray[8] == 'O')
    {
    Player2Win = true;
    }
    if(BoardArray[6] == 'O' && BoardArray[7] == 'O' && BoardArray[8] == 'O')
    {
    Player2Win = true;
    }
    if(BoardArray[0] == 'O' && BoardArray[4] == 'O' && BoardArray[8] == 'O')
    {
    Player2Win = true;
    }
    if(BoardArray[2] == 'O' && BoardArray[4] == 'O' && BoardArray[6] == 'O')
    {
    Player2Win = true;
    }
    if(BoardArray[1] == 'O' && BoardArray[4] == 'O' && BoardArray[7] == 'O')
    {
    Player2Win = true;
    }
    if(BoardArray[3] == 'O' && BoardArray[4] == 'O' && BoardArray[5] == 'O')
    {
    Player2Win = true;
    }

    if(Player1Win == true)
    {
    ErrorCode = 2;
    }
    else
    {
    if(Player2Win == true)
    {
    ErrorCode = 3;
    }
    else
    {
    if(Tie == true)
    {
    ErrorCode = 1;
    }
    else
    {
    ErrorCode = 0;
    }
    }
    }
    return ErrorCode;
    }
    //=========================================Artificia l==intelligence=================================== =====
    int could_win(char BoardArray[],char Player,int StartPoint)
    {
    int p;
    if(Player=='X')
    p=2;
    else if(Player=='O')
    p=3;
    char Board[9];
    for(int i=0;i<9;i++)
    Board[i]=BoardArray[i];

    for(int i=StartPoint;i<9;i++)
    {
    for(int i=0;i<9;i++)
    Board[i]=BoardArray[i];
    if(Board[i]==' ')
    {
    Board[i]=Player;
    if(CheckGameOver(Board)==p)
    return i;

    }
    }

    return 10;
    }
    int AI_Move(char BoardArray[],char AI,char player)
    {
    char Board[9];
    for(int i=0;i<9;i++)
    Board[i]=BoardArray[i];
    //-------------
    srand(time(0));
    //=============
    int Move=abs((rand() % 9)-1);
    Check:
    if(Move==0 || Move==2 || Move==6 || Move==8)
    goto Passed;
    while(Board[Move]==' ')
    if(Move!=0 || Move!=2 || Move!=6 || Move!=8)
    {
    Move=abs((rand() % 9)-1);
    goto Check;
    }
    Passed:
    // AI_score
    int counter=0;
    bool BAQQO=false;
    for(int i=0;i<9;i++)
    if(BoardArray[i]==' ')
    counter++;
    if(BoardArray[4]==' ')
    BAQQO=true;
    else if(counter==8)
    return Move;
    if(counter==8 && BAQQO)
    return 4;
    //------------------------------------------Manual-----------------------------------
    if((BoardArray[0]==player && BoardArray[8]==player && counter==6) || (BoardArray[2]==player && BoardArray[6]==player) && counter==6)
    if(BoardArray[1]==' ')
    return 1;
    else if(BoardArray[7]==' ')
    return 7;
    //========================
    if(BoardArray[4]==player && BoardArray[0]==player && BoardArray[8]==AI && counter==6)
    return 6;
    else if(BoardArray[4]==player && BoardArray[8]==player && BoardArray[0]==AI && counter==6)
    return 2;
    else if(BoardArray[4]==player && BoardArray[2]==player && BoardArray[6]==AI && counter==6)
    return 8;
    else if(BoardArray[4]==player && BoardArray[6]==player && BoardArray[2]==AI && counter==6)
    return 0;
    //------------------------------------------------------------------------------------

    for(int i=0;i<9;i++)
    Board[i]=BoardArray[i];

    int score=-10;
    int ai_p=could_win(BoardArray,AI,0);
    int player_p=could_win(BoardArray,player,0);
    if(ai_p < 9)
    return ai_p;
    else if(player_p < 9)
    return player_p;
    else
    {
    for(int i=0;i<9;i++)
    {
    for(int j=0;j<9;j++)
    Board[j]=BoardArray[j];
    if(Board[i]==' ')
    {
    Board[i]=AI;
    ai_p=could_win(Board,AI,0);
    if(ai_p <9)
    if(score <2 )
    {
    score=2;///========---MAX-SCORE---==========
    Move =i;
    }
    if(score >10)
    score=INT_MAX;
    ai_p=could_win(Board,AI,ai_p+1);
    if(ai_p <9 && score < 5)//------Check-if-it-is-better-move-------
    {
    score=4;
    Move=i;
    }
    Board[i]=player;
    player_p =could_win(Board,player,0);
    if(player_p <9)
    if(score <1)//------Check-if-it-is-better-move-------
    {
    score=1;
    Move =i;
    }
    player_p=could_win(Board,player,player_p+1);
    if(player_p <9 && score <INT_MAX)//------Check-if-it-is-better-move-------
    {
    score+=10;
    score=3;
    if(score <10)
    Move=i;
    }
    }
    }
    }
    return Move;
    }


  5. #165
    کاربر دائمی آواتار V0RTEX
    تاریخ عضویت
    آذر 1389
    محل زندگی
    kernel
    پست
    106

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    نقل قول نوشته شده توسط mahsa1370 مشاهده تاپیک
    برنامه ای که یه رشته ای را به عنوان ورودی بگیرد تعداد تکرار هر یک از کاراکترها را چاپ کند در زبان ++c
    البته این برنامه فقط تعداد کارکترهای حروف english رو حساب می کنه علامت ها رو نمی شماره اگه خواستید اوون ها هم بشماره باید یک خورده تغییرش بدین


    /*
    by V0RTEX :D
    */
    #include <iostream>
    #include <vector>
    using namespace std;
    int main()
    {
    vector<int> char_count(26);
    char s=' ';
    while(s!='\r' && s!='\n' )
    {
    s=cin.get();
    if(s>='A' && s <='z')
    if(s<='Z')
    char_count[(s+32)-97]++;
    else if(s>='a')
    char_count[s-97]++;
    }
    for(int i=0;i<26;i++)
    cout << char(i+65) << " = " << char_count[i]<<"\t";
    cout <<endl;
    system("pause");
    }

  6. #166
    کاربر دائمی آواتار voiceoffox
    تاریخ عضویت
    مهر 1389
    محل زندگی
    مشهد
    پست
    122

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    سلام و درود دوباره بر شما عزیزان پس از یک غیبت طولانی !!!

    این دیگه پروژه نیس ...

    بلکه یه PDF هس که توش 120 تا پروژه ساده رو توضیح داده و گفته ... و صد البت این پروژه ها دانشجویی نیستن ... در من پروژه ها برخی از نکات و دستورات ساده هم توضیح داده شده ...

    تا بعد خداحافظ ...
    فایل های ضمیمه فایل های ضمیمه

  7. #167

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    یه دفتر چه تلفن با قابلیت ( اضافه کردن ، حذف ، مرتب سازی ، جست و جو ، نمایش ، ذخیره سازی در فایل ) :
    // Count.cpp : Defines the entry point for the console application.
    //

    #include "stdafx.h"
    #include "iostream"
    #include "fstream"
    #include "string.h"
    #include "conio.h"
    using namespace std;

    struct PhoneBookObject
    {
    char FirstName[20];
    char LastName[20];
    char PhoneNumber[20];
    };

    void Add(PhoneBookObject PhoneBook[],int &NumObject,bool &Change)
    {
    cout<<"\nFirst Name : ";
    cin.getline(PhoneBook[NumObject].FirstName,19);

    cout<<"\nLast Name : ";
    cin.getline(PhoneBook[NumObject].LastName,19);

    cout<<"\nPhon Number : ";
    cin.getline(PhoneBook[NumObject].PhoneNumber,19);

    NumObject++;

    Change=1;
    }

    void Sort(PhoneBookObject PhoneBook[],int NumObject,bool &Change)
    {
    PhoneBookObject Temp;

    for(int i=0;i<NumObject;i++)
    for(int j=0;j<NumObject-i-1;j++)
    if(strncmp(PhoneBook[j].LastName ,PhoneBook[j+1].LastName,19)>0)
    {
    Temp=PhoneBook[j];
    PhoneBook[j]=PhoneBook[j+1];
    PhoneBook[j+1]=Temp;
    }

    Change=1;
    }

    void Show(PhoneBookObject PhoneBook[],int NumObject)
    {
    for(int i=0;i<NumObject;i++)
    cout<<"\n"<<i<<") "<<PhoneBook[i].FirstName<<" "<<PhoneBook[i].LastName<<"\tTel: "<<PhoneBook[i].PhoneNumber;
    }

    int Search(PhoneBookObject PhoneBook[],int NumObject)
    {
    char Input[20];
    int Index=-1;
    cout<<"\nLast Name : ";
    cin.getline(Input,19);

    for(int i=0;i<NumObject;i++)
    if(strstr(PhoneBook[i].LastName,Input))
    {
    Index=i;
    break;
    }

    if(Index!=-1)
    {
    cout<<"\nFirst Name: "<<PhoneBook[Index].FirstName<<"\tLast Name: "<<PhoneBook[Index].LastName<<"\tTel: "<<PhoneBook[Index].PhoneNumber;
    return Index;
    }
    else
    {
    cout<<"\n\""<<Input<<"\" Not Find!";
    return Index;
    }
    }
    void Save(PhoneBookObject PhoneBook[],int NumObject,bool &Change)
    {
    ofstream ofile;
    ofile.open("c:\\PhoneBook.txt");

    if(Change==1)
    {
    ofile<<NumObject;
    for(int i=0;i<NumObject;i++)
    ofile<<"\n"<<PhoneBook[i].FirstName<<"\n"<<PhoneBook[i].LastName<<"\n"<<PhoneBook[i].PhoneNumber;

    cout<<"\nSaved!";

    Change=0;
    }
    else
    cout<<"\nPhone Number Save befor!";
    }


    void Delete(PhoneBookObject PhoneBook[],int &NumObject,bool &Change)
    {
    int Find;
    char Sure;
    Find=Search(PhoneBook,NumObject);

    if(Find!=-1)
    {
    cout<<"\nAre You Sure to Delete this Number(yes/no)?";
    Sure=getch();
    switch(Sure)
    {
    case 'y':
    {
    for(int i=Find;i<NumObject-1;i++)
    PhoneBook[i]=PhoneBook[i+1];

    NumObject--;
    Change=1;

    break;
    }

    case 'n':
    break;

    default : cout<<"\nWrong Character!";
    }
    }

    }

    void Exit(char &Input,PhoneBookObject PhoneBook[],int NumObject,bool &Change)
    {
    char Sure;
    if(Change==1)
    {
    cout<<"\nDo you want to seva the phone Number before Exit on Program(yes/no)?";
    Sure=getch();
    switch(Sure)
    {
    case 'y':
    {
    Save(PhoneBook,NumObject,Change);
    break;
    }
    case 'n':
    break;
    default : cout<<"\nWrong Character!";
    }
    }

    cout<<"\nAre you sure to exit on program(yes/no)?";
    Sure=getch();
    switch(Sure)
    {
    case 'y':
    break;

    case 'n':
    Input='0';
    break;
    default : cout<<"\nWrong Character!";
    }
    }


    void main()
    {
    PhoneBookObject PhoneBook[20];
    int NumObject=0;
    bool Change=1;
    char Input=0;

    ifstream ifile;
    ifile.open("c:\\PhoneBook.txt");
    ifile>>NumObject;

    for(int i=0;i<NumObject;i++)
    {
    ifile>>PhoneBook[i].FirstName;
    ifile>>PhoneBook[i].LastName;
    ifile>>PhoneBook[i].PhoneNumber;
    }

    cout<<" *---* Welcome to your Phone Book *---*";

    while(Input!='7')
    {
    cout<<"\n1)Add\n2)Delete\n3)Sort\n4)Show\n5)Search \n6)Save\n7)Exit";

    cout<<"\nPlease enter number of your act : ";

    Input=getch();

    switch(Input)
    {
    case '1':Add(PhoneBook,NumObject,Change);
    break;

    case '2':Delete(PhoneBook,NumObject,Change);
    break;

    case '3':Sort(PhoneBook,NumObject,Change);
    break;

    case '4':Show(PhoneBook,NumObject);
    break;

    case '5':Search(PhoneBook,NumObject);
    break;

    case '6':Save(PhoneBook,NumObject,Change);
    break;

    case '7':Exit(Input,PhoneBook,NumObject,Change);
    break;

    default:cout<<"\n *---* The input character is wrong!*---*\n\n";
    }
    }
    }

  8. #168
    کاربر دائمی آواتار voiceoffox
    تاریخ عضویت
    مهر 1389
    محل زندگی
    مشهد
    پست
    122

    Cool نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    سلام
    اینم بازی "سنگ - کاغذ - قیچی" هست ! اما با بازی سنگ و کاغذ و قیچی که چند صفحه قبل یکی نوشته بود فرق هایی داره!

    این بازیتک نفره اس و فقط شمایین با کامپیوتر ! یه جورایی هوشمنده !

    #include<iostream.h>
    #include<conio.h>
    #include<stdlib.h>
    int mantegh(int,int);
    main()
    {
    randomize();
    int pcp=0,hup=0,mon=0,sel=0,pcsel=0,ans=0;
    error1:
    cout<<"Choose your round mode by pressing the number of mode wich you want :"<<"\n";
    cout<<"(This will be the number of rounds wich you play)"<<"\n";
    cout<<"0. <1>Round"<<"\n"<<"1. <3>Rounds"<<"\n"<<"2. <5>Rounds"<<"\n";
    cout<<"3. <10>Rounds"<<"\n"<<"4. <15>Rounds"<<"\n"<<"5. <20>Rounds"<<"\n";
    cout<<"6. <25>Rounds"<<"\n"<<"7. <50>Rounds"<<"\n"<<"8. <75>Rounds"<<"\n";
    cout<<"9. <100>Rounds"<<"\n";
    cout<<"Now ! insert the numbr of your mode :"<<"\n";
    mon=getche();
    if(mon=='0')
    mon=1;
    else if(mon=='1')
    mon=3;
    else if(mon=='2')
    mon=5;
    else if(mon=='3')
    mon=10;
    else if(mon=='4')
    mon=15;
    else if(mon=='5')
    mon=20;
    else if(mon=='6')
    mon=25;
    else if(mon=='7')
    mon=50;
    else if(mon=='8')
    mon=75;
    else if(mon=='9')
    mon=100;
    else
    {
    clrscr();
    cout<<"Just press the number of mode , nothing else ! OK ?"<<"\n";
    goto error1;
    }
    cout<<"\n"<<"Ok !"<<" Remmember that you must reach to htis point !"<<"\n";
    cout<<"press any key to start the game ..."<<"\n";
    getch();
    clrscr();
    for(int i=1;i<=mon;i++)
    {
    error2:
    cout<<"Press the number of the thing that you wantb to use :"<<"\n";
    cout<<"1. Sang"<<"\n"<<"2. Kaghaz"<<"\n"<<"3. Gheychi"<<"\n";
    sel=getch();
    if(sel=='1')
    {
    clrscr();
    cout<<"******************************"<<"\n";
    cout<<"Your selection : <SANG>"<<"\n";
    }
    else if(sel=='2')
    {
    clrscr();
    cout<<"******************************"<<"\n";
    cout<<"Your selection : <KAGHAZ>"<<"\n";
    }
    else if(sel=='3')
    {
    clrscr();
    cout<<"******************************"<<"\n";
    cout<<"Your selection : <GHEYCHI>"<<"\n";
    }
    else
    {
    clrscr();
    cout<<"You are just aloud to enter numbers 1 or 2 or 3 ! OK ?"<<"\n";
    goto error2;
    }
    pcsel=((rand()%3)+1);
    if(pcsel==1)
    cout<<"Computer selection : <GHEYCHI>"<<"\n";
    else if(pcsel==2)
    cout<<"Computer selection : <SANG>"<<"\n";
    else
    cout<<"Computer selection : <KAGHAZ>"<<"\n";
    ans=mantegh(pcsel,sel);
    if(ans==1)
    {
    cout<<"====="<<"\n"<<"No added point !"<<"\n";
    cout<<"Computer points : "<<pcp<<"\n"<<"Human points : "<<hup<<"\n";
    }
    else if(ans==2)
    {
    cout<<"====="<<"\n"<<"Player gained the point !"<<"\n";
    ++hup;
    cout<<"Computer points : "<<pcp<<"\n"<<"Human Points : "<<hup<<"\n";
    }
    else if(ans==3)
    {
    cout<<"====="<<"\n"<<"Computer gained the point !"<<"\n";
    ++pcp;
    cout<<"Computer points : "<<pcp<<"\n"<<"Human Points : "<<hup<<"\n";
    }
    else
    {
    clrscr();
    goto error2;
    }
    cout<<"******************************"<<"\n";
    }
    if(pcp==hup)
    {
    clrscr();
    cout<<"##########################################" <<"\n";
    cout<<"# There wasn't any winner in this game ! #"<<"\n";
    cout<<"##########################################" <<"\n";
    cout<<" *Computer points : "<<pcp<<"\n"<<" *Player points : "<<hup<<"\n";
    }
    else if(pcp>hup)
    {
    clrscr();
    cout<<"##########################################" <<"\n";
    cout<<"# Computer won this game ! #"<<"\n";
    cout<<"##########################################" <<"\n";
    cout<<" *Computer points : "<<pcp<<"\n"<<" *Player points : "<<hup<<"\n";
    }
    else if(hup>pcp)
    {
    clrscr();
    cout<<"##########################################" <<"\n";
    cout<<"# Player won this game ! #"<<"\n";
    cout<<"##########################################" <<"\n";
    cout<<" *Computer points : "<<pcp<<"\n"<<" *Player points : "<<hup<<"\n";
    }
    else
    getch();
    }
    int mantegh(int com,int man)
    {
    if((com==2 && man=='1')||(com==3 && man=='2')||(com==1 && man=='3'))
    return 1;
    //No one didn't take the point !
    else if((com==1 && man=='1')||(com==2 && man=='2')||(com==3 && man=='3'))
    return 2;
    //Human took the point !
    else if((com==1 && man=='2')||(com==2 && man=='3')||(com==3 && man=='1'))
    return 3;
    //Computer took the point !
    else
    return 0;
    }


    کامپایل شده تحت Turbo C++‎ 4.5
    آخرین ویرایش به وسیله voiceoffox : جمعه 24 دی 1389 در 12:07 عصر دلیل: یه نقص فنی کوچولو !

  9. #169
    کاربر دائمی آواتار voiceoffox
    تاریخ عضویت
    مهر 1389
    محل زندگی
    مشهد
    پست
    122

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    سلام ... من این دفعه با یه برنامه جدید و تقریبا در حد آسون اومدم !

    این برنامه یه عدد میگیره و میگه اول هس یا نه و بعد تمام مقسوم علیه ها و همچنین مقسوم علیه های اول عدد رو به کاربر میگه ...

    #include<iostream.h>
    #include<conio.h>
    #include<stdlib.h>
    int isprime(int);
    main()
    {
    int n=0,div[999],sh=0,pdiv[999],count=0,s=0;
    error:
    cout<<"Please insert a number : "<<"\n";
    cin>>n;
    if(n<=0)
    {
    clrscr();
    cout<<"You are just aloud to enter numbers wich are bigger than 0 (zero) ! Please try again . OK ?"<<"\n";
    n=0;
    goto error;
    }
    for(int i=1;i<=n;i++)
    {
    if((n%i)==0)
    {
    div[sh]=i;
    sh++;
    }
    }
    if(sh==2)
    {
    cout<<"******************************************* *******"<<"\n";
    cout<<"This number is prime and has 2 divisors :"<<"\n "<<char(26)<<" {1 , "<<n<<"}"<<"\n";
    cout<<"******************************************* *******"<<"\n";
    getch();
    exit(1);
    }
    else if(sh==1)
    {
    cout<<"******************************************* *******"<<"\n";
    cout<<"This number has ony 1 divisor :"<<"\n "<<char(26)<<" {1}"<<"\n";
    cout<<"******************************************* *******"<<"\n";
    getch();
    exit(1);
    }
    else
    {
    cout<<"******************************************* *******"<<"\n";
    cout<<"This number is not prime and has "<<(sh)<<" divisors :"<<"\n "<<char(26)<<" {";
    for(int j=0;j<sh;j++)
    {
    if(j==(sh-1))
    {
    cout<<div[j]<<"}"<<"\n";
    goto con;
    }
    cout<<div[j]<<" , ";
    }
    }
    con:
    for(int k=0;k<sh;k++)
    {
    s=isprime(div[k]);
    if(s!=0)
    {
    pdiv[count]=s;
    s=0;
    count++;
    }
    else
    s=0;
    }
    cout<<" "<<char(26)<<" Prime divisors : {";
    for(int u=0;u<count;u++)
    {
    if(u==(count-1))
    {
    cout<<pdiv[u]<<"}"<<"\n";
    cout<<"******************************************* *******"<<"\n";
    getch();
    exit(1);
    }
    cout<<pdiv[u]<<" , ";
    }
    }
    //================================================== ============================
    int isprime(int a)
    {
    int pri=0;
    for(int r=1;r<=a;r++)
    {
    if((a%r)==0)
    pri++;
    }
    if(pri==2)
    return a;
    else
    return 0;
    }
    آخرین ویرایش به وسیله voiceoffox : سه شنبه 28 دی 1389 در 20:34 عصر دلیل: نقص محاسباتی در برنامه ...

  10. #170
    کاربر دائمی آواتار voiceoffox
    تاریخ عضویت
    مهر 1389
    محل زندگی
    مشهد
    پست
    122

    Lightbulb نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    حدس گلدباخ

    این برنامه برنامه خوب و جالبیه ... این برنامه درستی حدس گلدباخ رو درباره عددی که شما بهش میدین نشون میده ...
    اما اگه کسی نمیدونه حدس گلدباخ چیه ...

    ==========
    حدس گلدباخ :
    هر عدد زوج بزرگتر از 4 رو میتوان به صورت مجموع 2 عدد اول (2 عدد تکراری و یا غیر تکرارای) نوشت .
    هر عدد فرد بزرگتر از 5 را میتوان به صورت مجموع 3 عدد اول (3 عدد تکراری و با غیر تکراری) نوشت .
    ==========

    حالا برنامه چی کار میکنه ...
    این برنامه یک عدد بزرگتر از 5 از شما میگیره و بعد اون عدد شما رو اگر فرد باشه بصورت حاصلجمع 3 عدد اول ، و اگر زوج باشه به صورت حاصلجمع 2 عدد اول می نویسه و به شما میگه ... (به توضیحات بالا توجه کنن ! )

    #include<iostream.h>
    #include<conio.h>
    #include<stdlib.h>
    main()
    {
    int co=0,w=0,q=0,pn[999],a=0,num=0,e=0;
    error:
    cout<<"Please insert a number (Please attention that it must be bigger than 5) : "<<"\n";
    cin>>num;
    if(num<=5)
    {
    clrscr();
    cout<<"The number you enter must be 6 or bigger to continue ! OK ?"<<"\n";
    num=0;
    goto error;
    }
    for(long int i=2;i<=num;i++)
    {
    for(long int j=1;j<=i;j++)
    {
    if((i%j)==0)
    co++;
    }
    if(co==2)
    {
    pn[a]=i;
    co=0;
    a++;
    }
    else
    co=0;
    }
    if((num%2)==0)
    {
    for(int u=0;u<=a;u++)
    {
    for(int o=0;o<=u;o++)
    {
    w=pn[u];
    q=pn[o];
    if((w+q)==num)
    {
    cout<<"********************"<<"\n"<<w<<" + "<<q<<" = "<<num<<"\n";
    getch();
    exit(1);
    }
    }
    }
    }
    else
    {
    for(int u=0;u<=a;u++)
    {
    for(int o=0;o<=u;o++)
    {
    for(int p=0;p<=o;p++)
    {
    w=pn[u];
    q=pn[o];
    e=pn[p];
    if((w+q+e)==num)
    {
    cout<<"********************"<<"\n"<<w<<" + "<<q<<" + "<<e<<" = "<<num<<"\n";
    getch();
    exit(1);
    }
    }
    }
    }
    }
    }




    در ضمن یادتون نره که این برنامه یکم سنگینه و سعی کنن عدد های خیلی گنده بهش ندن ...

    کامپایل رفته تحت Turbo C++‎ 4.5 !
    آخرین ویرایش به وسیله voiceoffox : سه شنبه 28 دی 1389 در 17:14 عصر دلیل: افزایش توانایی های برنامه ...

  11. #171
    کاربر دائمی آواتار ghasemweb
    تاریخ عضویت
    تیر 1388
    محل زندگی
    تهران
    پست
    608

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    دفترچه تلفن با روش فايلينگ همراه امكاناتي چون درج ويرايش حذف جستجو ليست كردن و ...
    فایل های ضمیمه فایل های ضمیمه

  12. #172
    کاربر دائمی آواتار هم دانشگاهی
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    بیرجند
    پست
    326

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    سلام دوستان !

    برنامه غلط یاب توسط درخت trie :


    برنامه در ابتدا یک فایل source داره و بعد به کمک این source اشکالات فایل statement را مشخص میکند !

    try it NOW
    فایل های ضمیمه فایل های ضمیمه

  13. #173

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    تشخیص متقارن بودن پارانتزها (به ازای هر پارانتز باز ، یک پارانتز بسته وجود دارد) با استفاده از پشته ها (STL) :


    #include <iostream>
    #include <conio>
    #include <stack>
    #include <string>
    #include <vector>
    using namespace std;
    int main(){
    string str = "(2+3*(5+6/2))+(3/(6+7*3))";
    stack<char,vector<char>> s;
    for(int i=0;i<str.size();i++){
    if(str[i]=='(')
    s.push('(');
    if(str[i]==')')
    s.pop();}
    if(s.empty())
    cout<<"True \n";
    else
    cout<<"False \n";
    getch();
    }






  14. #174

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    مرتب کردن عناصر یک Vector :


    #include <iostream>
    #include <conio>
    #include <vector>
    #include <string>
    #include <algorithm>
    using namespace std;
    int main(){
    vector<string> v;
    v.push_back("salar");
    v.push_back("ali");
    v.push_back("hossain");
    v.push_back("reza");
    //----------------------
    sort(v.begin(),v.end());
    //----------------------
    for(int i=0;i<v.size();i++)
    cout<<v[i]<<endl;
    getch();
    }






  15. #175
    کاربر تازه وارد آواتار aznaee
    تاریخ عضویت
    بهمن 1389
    محل زندگی
    دیار اشترانکوه
    سن
    36
    پست
    58

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    این برنامه 12 عدد از کاربر میگیره نمودار خطی و میله ای رسم میکنه ترسیم خط بروش dda
    #include <graphics.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <conio.h>
    #include <math.h>
    #include <string.h>
    #include <iostream.h>
    // Algoritm DDA
    void linedda(int x1,int y1,int x2, int y2,int c)
    {
    int dx=x2-x1;
    int dy=y2-y1;
    float x=x1;
    float y=y1;
    float xi,yi,step,k;

    if (fabs(dx)>fabs(dy))
    step=abs(dx);
    else
    step=abs(dy);
    xi=dx/step;
    yi=dy/step;

    for(k=0;k<=step;k++)
    {
    putpixel(floor(x),floor(y),c);
    x+=xi;
    y+=yi;
    }
    }
    void gui()
    {
    /* request auto detection */
    int gdriver = DETECT, gmode, errorcode;

    /* initialize graphics mode */
    initgraph(&gdriver, &gmode, "");

    /* read result of initialization */
    errorcode = graphresult();

    if (errorcode != grOk) /* an error occurred */
    {
    printf("Graphics error: %s\n", grapherrormsg(errorcode));
    printf("Press any key to halt:");
    getch();
    exit(1); /* return with error code */
    }

    }

    int guie()
    {
    getch();
    closegraph();
    return 0;
    }
    void bound(int x,int y,int f,int b)
    {
    int cu=getpixel(x,y);
    if (cu!=b)
    if(cu!=f)
    {
    putpixel(x,y,f);
    bound(x+1,y,f,b);
    bound(x,y+1,f,b);
    bound(x,y-1,f,b);
    bound(x-1,y,f,b);
    }
    }

    void bar(int b,int c)
    {
    linedda(c,440,c,b,5);
    linedda(c+10,440,c+10,b,5);
    linedda(c,b,c+10,b,5);
    linedda(c,440,c+10,440,5);
    bound(c+1,439,10,5);
    }

    int main(void)
    {
    const n=12;
    int v[n],i,j,x,x1;
    char *s;


    /* draw a line */
    for (i=0;i<n;i++)
    {
    printf("Please enter number (%d): ",i+1);
    cin>>x;
    if (x<=100)
    v[i]=x;
    else
    v[i]=x%100;
    }
    gui();
    cleardevice();
    outtextxy(250,10,"In The Name of God");
    outtextxy(400,470,"(Zalaghi,Bonyadi,Mahdavi)");

    // bar diagram
    for(i=240,j=100;i<=420;i+=20,j-=10)
    {
    linedda(100,i,100,i+20,10);
    linedda(98,i,102,i,15);
    switch (j)
    {
    case 100:s="100";
    break;
    case 90 :s="90";
    break;
    case 80:s="80";
    break;
    case 70 :s="70";
    break;
    case 60:s="60";
    break;
    case 50 :s="50";
    break;
    case 40:s="40";
    break;
    case 30 :s="30";
    break;
    case 20:s="20";
    break;
    case 10 :s="10";
    break;
    }

    outtextxy(70,i-3,s);
    }
    linedda(98,440,102,440,15);
    outtextxy(70,437,"0");
    linedda(100,440,400,440,10);
    for(i=0,j=130;i<n;i++,j+=20)
    {
    x=v[i]/10*20+(v[i]%10)*2;
    bar(440-x,j);
    }

    // Linear Diagram
    for(i=20,j=100;i<=200;i+=20,j-=10)
    {
    linedda(100,i,100,i+20,10);
    linedda(98,i,102,i,15);
    switch (j)
    {
    case 100:s="100";
    break;
    case 90 :s="90";
    break;
    case 80:s="80";
    break;
    case 70 :s="70";
    break;
    case 60:s="60";
    break;
    case 50 :s="50";
    break;
    case 40:s="40";
    break;
    case 30 :s="30";
    break;
    case 20:s="20";
    break;
    case 10 :s="10";
    break;
    }

    outtextxy(70,i-3,s);
    }
    linedda(98,220,102,220,15);
    outtextxy(70,217,"0");
    linedda(100,220,400,220,10);
    for(i=0,j=130;i<n-1;i++,j+=20)
    {
    x=(v[i]/10)*20+(v[i]%10)*2;
    x1=(v[i+1]/10)*20+(v[i+1]%10)*2;
    //putpixel(j,220-x,15);
    linedda(j,220-x,j+20,220-x1,15);


    }

    /* clean up */
    guie();
    }

  16. #176
    کاربر جدید
    تاریخ عضویت
    دی 1389
    محل زندگی
    مشهد
    پست
    14

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    این برنامه تمام جایگشت های یک لیست عدد رو می ده



    #include <iostream>
    #include <fstream>
    #include <algorithm>
    #include <cmath>
    #include <vector>
    #include <set>
    #include <string>
    #include <sstream>
    #include <stack>
    #include <queue>
    #include <map>
    #include <numeric>
    #include <cstdlib>
    #include <cstring>
    #include <utility>
    #include <functional>
    #include <cstdio>
    #include <ctime>
    using namespace std ;
    int main () {
    //freopen ("in.in","r",stdin) ;
    int n ; cin >> n ;// number of inputs
    vector <int> v (n) ;
    for(int i = 0 ; i < n;i ++) cin >> v [i] ;
    sort (v.begin(),v.end()) ;
    do {
    for(int i = 0 ; i < n;i ++){
    if (i) printf (" ") ;
    printf ("%d",v [i]) ;
    }
    printf ("\n");
    }while (next_permutation (v.begin(),v.end())) ;
    }

  17. #177

    شناسایی درایوهای ویندوز

    سلام دوستان
    طبق درخواست شما یه برنامه کوچیک و جمع و جور برای شناسایی درایوهای ویندوز نوشتم امیدوارم که از این برنامه خوشتون بیاد ، خیلی می گفتند که چه طوری فلش ها را شناسایی کنیم که فلش ها تو این برنامه خودشون از نوع فلاپی ها هستند و چون درایوهای فلاپی همیشه a یا b هستند پس بقیه شون فلش به حساب می ایند.
    منابع : اینترنت و با اجازه تون یه کمم خودم
    لینک :
    http://kitten2.persiangig.com/VDI.rar

    برای اطلاعات بیشتر به وبلاگم سر بزنید
    فعلا

  18. #178

    نقل قول: شناسایی درایوهای ویندوز

    سلام دوستان
    بعد از چند ماه امروز با نسخه جدید kudos که با استفاده از کتابخانه Qt ان را به صورت گرافیکی بازنویسی کردم اومدم

    البته هنوز هم از ado db در برنامه استفاده می کنم و امکان اضافه کردن کلمه وجود داره
    برنامه با ویژوال استودیو نوشته شده است.
    لینک کد برنامه + باینری :
    http://kitten2.persiangig.com/Kudos%20Dic%20v%200.2.rar

    لینک باینری :
    http://kitten2.persiangig.com/Kudos%...%20-%20bin.rar
    اطلاعات بیشتر در وبلاگ

    فعلا

  19. #179

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    موضوع پروژه: لیست پیوندی (Linked List)

    این یک پروژه ی بسیار ساده در حد آموزشی است.

    1- کد نوشته شده کامنت ندارد. ( به جای آن مستندات برنامه در یک فایل pdf نوشته شده است )
    2- برای وارد شدن به واسط کاربری باید x را وارد کنید.
    3- لیست پیوندی با عدد کار می کند که البته می توان به راحتی کار کردن با string ها را به آن اضافه نمود
    4- دو نوع روش sort در نظر گرفته شده است. پر سرعت ترین مرتب سازی ها Recursive Merge Sort می باشد تابع آن داخل کلاس تعریف شده است.

    برای اطلاعات بیشتر اینکه لیست پیوندی چیست می توانید به اینجا مراجعه کنید.

    موفق باشید

    Project_LinkedList.rar

  20. #180

    تبدیل مبناها

    یه برنامه ی تقریبا ساده که اعداد رو تو مبناها ی مختلف میگیره و اونها رو جمع و تفریق و ضرب و تقسیم و تبدیل به مبناهای دیگه میکنه .

    http://www.4shared.com/file/AxOhdFpP/Base.html
    آخرین ویرایش به وسیله Arcsinos : دوشنبه 09 اسفند 1389 در 19:28 عصر

  21. #181
    کاربر دائمی آواتار baran_mehr
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    شهر آفتاب گرمسار
    پست
    1,129

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    تا حالا سعی کرديد توی ويژوال سی رنگ پس زمينه رو عوض کنيد و رنگ دلخواهتون رو براش تعيين کنيد ؟

    اين کار مستقيما توی ويزارد نيست اما با يک خط کد نويسی قابل انجام هستش !

    پوزه شما ۲ تا فايل cpp اصلی داره که عبارتند از projectname.cpp و projectnameDlg.cpp که منظور از projectname نام پروژه ای هستش که انتخاب کرديد.

    توی فايل projectname.cpp قبل ار دستور;() int nResponse = dlg.DoModal کافيه اين يک خط رو بنويسيد :

    ;(( SetDialogBkColor(RGB(255,0,123),RGB(12,56,212


    RGB اول رنگ پس زمينه را مشخص ميکنه و RGB دوم رنگ متن ديالوگ رو تعيين می کنه .

    منبع

  22. #182
    کاربر دائمی آواتار baran_mehr
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    شهر آفتاب گرمسار
    پست
    1,129

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    برنامه ساده که يوزر و پسورد و شماره تلفن بگيره و خودش به اينترنت وصل بشه

    اول که بايد يه پروژه جديد بسازيد و ۳ تا edit box برای اطلاعات يوزر و پسورد و شماره تلفن.
    اولين کاری که بايد کنيد اينه که ۱-۲ کلاس رو به پروژه اضافه کنيد که با ۲خط زير انجام ميديد:

    #include "ras.h"
    #include "raserror.h"

    حالا ۲ تا دکمه بگذاريد برای وصل شدن و قطع ارتباط.
    برای وصل شدن از چند خط ساده زير استفاده کنيد که هر خط رو جداگانه توضيح ميدم:

     RASDIALPARAMS rdParams;// متغييری(شئی) است برای دادن اطلاعات مورد نياز برای کانکت به اينترنت
    rdParams.dwSize = sizeof(RASDIALPARAMS);
    rdParams.szEntryName[0] = '\0';
    lstrcpy( rdParams.szPhoneNumber, m_strPhoneNumber );//در اين قسمت شماره تلفن را مقدار دهی ميکنيم
    rdParams.szCallbackNumber[0] = '\0';
    lstrcpy( rdParams.szUserName, m_strUserName );//در اين قسمت يوزررا مقدار دهی ميکنيم
    lstrcpy( rdParams.szPassword, m_strPassword );//در اين قسمت پسورد را مقدار دهی ميکنيم
    rdParams.szDomain[0] = '\0';

    HRASCONN hRasConn = NULL;//اين متغيير برای نسبت دادن يک هندل به اين کانکشن در صورت موفقيت خوهد بود که بتوان در آينده از آن استفاده کرد مثلا آنرا قطع کرد
    DWORD dwRet = RasDial( NULL, NULL, &rdParams, 0L, NULL, &hRasConn );//در اين قسمت شروع به شماره گيری ميکند و نتيجه شماره گيری بازگردانده می شود که در صورت موفقيت صفر و در غير اين صورت شماره خطلا خواهد بود
    if ( dwRet == 0 ) return true;
    char szBuf[256];
    if ( RasGetErrorString( (UINT)dwRet, (LPSTR)szBuf, 256 ) != 0 )//اگر منجر به خطا شد با استفاده از شماره خطا متن خطا را بدست آمرده نمايش می دهيم و کانکشن را می بنديم
    wsprintf( (LPSTR)szBuf, "Undefined RAS Dial Error (%ld).", dwRet );
    RasHangUp( hRasConn );
    MessageBox( (LPSTR)szBuf, "Error", MB_OK | MB_ICONSTOP );
    return false;




    تا ايجا نحوه خيلی ساده اتصال رو ديديم. حالا بايد در صورت نياز امکان قطع کردن رو هم فراهم کنيم که اونم به سادگی کد زير هستش:

    RASCONN ras[20];
    DWORD dSize, dNumber;
    char szBuf[256];

    connected=false;
    ras[0].dwSize = sizeof( RASCONN );
    dSize = sizeof( ras ); // Get active RAS - Connection
    DWORD dwRet = RasEnumConnections( ras, &dSize, &dNumber );
    if ( dwRet != 0 )
    {
    if ( RasGetErrorString( (UINT)dwRet, (LPSTR)szBuf, 256 ) != 0 )
    wsprintf( (LPSTR)szBuf, "Undefined RAS Enum Connections error (%ld).", dwRet );
    MessageBox( (LPSTR)szBuf, "RasHangUp", MB_OK | MB_ICONSTOP );
    return false;
    }
    bool bOK = true;
    for( DWORD dCount = 0; dCount < dNumber; dCount++ )
    { // Hang up that connection
    HRASCONN hRasConn = ras[dCount].hrasconn;
    DWORD dwRet = RasHangUp( hRasConn );
    if ( dwRet != 0 )
    {
    char szBuf[256];
    if ( RasGetErrorString( (UINT)dwRet, (LPSTR)szBuf, 256 ) != 0 )
    wsprintf( (LPSTR)szBuf, "Undefined RAS HangUp Error (%ld).", dwRet );
    MessageBox( (LPSTR)szBuf, "RasHangUp", MB_OK | MB_ICONSTOP );
    bOK = false;
    }
    }
    return bOK;


    با اين ۲ تابع ساده ميتونيد به اينترنت متصل شيد. اما نکاتی که هست اينه که :
    اولا اصلا کانکشن ويندوزی ساخته نميشه.
    دوماً اينکه ايکون اتصال هم نمايش داده نميشه و دست شمارو باز ميگذاره که هرجور دوست داريد اعمال سليقه کنيد.
    منبع

  23. #183

    نقل قول: چاپ کردن عناصر یک آرایه بروش بازگشتی

    سلام دوستان
    اینم یه برنامه که یه پشته را پیاده سازی می کنه و یه سری اطلاعات را داخلش میریزه و بعدش دوباره اونها را خارج می کنه (برای اموزش خوبه)
    #include <stdio.h>
    #include <conio.h>
    int top;
    struct stack
    {
    int data;
    struct stack *next;
    };
    bool isempty(struct stack *x)
    {
    if(!top) return true;
    else return false;
    }

    int pop(struct stack *x,bool rm)
    { if(!isempty(x))
    {
    struct stack *y=x;
    for(int i=0;i<top-1;i++) x = x->next;
    int data = x->data;
    if(rm)
    {
    for(int i=0;i<top-2;i++) y = y->next;
    y->next = NULL;
    x = y;
    top--;
    }
    return data;
    }else
    {
    printf("It is Empty!");
    return 0;
    }
    }
    void push(struct stack *x,int data)
    {
    for(int i = 0;i<top;i++) x = x->next;
    x->data = data;
    x->next = new struct stack;
    top++;
    }
    int main()
    {
    top = 0;
    struct stack *t = new struct stack;
    push(t,1);
    push(t,2);
    push(t,3);
    printf("%d",pop(t,true));
    printf("%d",pop(t,false));
    printf("%d",pop(t,true));
    printf("%d",pop(t,false));
    printf("%d",pop(t,false));
    getch();
    return 0;
    }

  24. #184
    کاربر دائمی آواتار FastCode
    تاریخ عضویت
    تیر 1388
    محل زندگی
    /dev/null
    پست
    3,486

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    این هم یدونه از طرف من.
    یکی از دوستام گفت که یه برنامه بده ک اعداد اول رو حساب کنه.
    باید یه چیزی مینوشتم که توی sms جا بشه.
    نخندید.
    #include "stdio.h"
    #include "malloc.h"
    #define U unsigned int
    int main(){U S,E,m=1,c=1,V;printf("S? E?");scanf("%u %u",&S,&E);if(S>E)return 1;if((E>1)&&(S<2))printf("%u\n",2);U* L=(U*)malloc(6542*sizeof(U));L[0]=2;bool D=0;for(U n=2;n!=E;n++){for(U t=0;t!=c;t++)if((n%(V=L[t]))==0)goto x;if((V*V<n)&&((n%(V=L[C++‎]))==0))goto x;if(n>S)printf("%u\n",n);if(!D){L[m++]=n;if(n*n>E){D=1;if(n<S){while((V*V)<S)V=L[C++‎];n=S;}}}x:;}free(L);return 0;}

    با gcc روی دبییان x86_64, armel و vC++‎ 6 روی ویندوز x86 کامپایل میشه.
    آخرین ویرایش به وسیله FastCode : سه شنبه 30 فروردین 1390 در 15:37 عصر

  25. #185

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    سلام دوستان
    این هم یه برنامه ساده برای نشان دادن چگونگی کار با لینک لیستها
    #include <stdio.h>
    #include <conio.h>

    struct linklist
    {
    int data;
    struct linklist *next;
    };

    struct linklist *createNode() {
    struct linklist *tmp = new struct linklist;
    return tmp;
    }
    int main() {
    struct linklist *mylist,*T;
    mylist = new struct linklist;
    T = mylist;
    mylist->data = 0;
    mylist->next = createNode();
    mylist = mylist->next;
    mylist->data = 1;
    mylist->next = createNode();
    mylist = mylist->next;
    mylist->data = 2;
    mylist->next = NULL;
    mylist = T;
    while(mylist)
    {
    printf("%d\n",mylist->data);
    mylist = mylist->next;
    }
    getch();
    return 0;
    }

  26. #186

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    برنامه ی مغلوب عدد طبیعی n

    #include<iostream.h>
    Main()
    {
    Int n,d,s=0;
    Cout<<”please inter n”;
    Cin>>n;
    While(n>0){
    D=n%10;
    N=n\10;
    S=s*10+d;
    }cout<<s;
    }
    [[/LTR_INLINE][/LTR_INLINE][/LEFT]
    آخرین ویرایش به وسیله sodabeh : یک شنبه 04 اردیبهشت 1390 در 18:21 عصر دلیل: فرمت نا مناسب

  27. #187

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    برنامه بازی حدس عدد به زبان C#‎ باشه لطفان
    که اول کاربر اول عدد رو وارد میکنه
    سپس کار بر دوم حدس میزنه
    اگه عدد بزرگتر بود پیغام بزرگتر و اگر کوچیکتر بود پیغام کوچیکتر نمایش بده
    تا 10 عدد بیشتر نتونه وارد کنه در ضمن اگر کار بر بجای عدد کاراکتر وارد کرد برنامه پیغام خطا بده و این کار تا زمانی که عدد رو وارد نکرده ادامه داشته باشه
    با do while باشه

    میشه برنامه قبی رو هم به صورتی انجام داد که بعد از اتمام ازش بپرسه میخواد ادامه بده بعد اگر میخوادy وارد کنه اگر نمیخواد n
    میشه اینو چندین مرحلهای کرد ؟ که تو هر مرحله تعدا اعدادی که میتونی حدس بزنه کمتر باشه

    میدونم این برنامه زیادی مشکل داره شما به بزرگواریتون ببخشید و ممنون میشم کمکم کنید
    --------------------------------------------------------------------------------------------------------


    #include<stdio.h>
    include<conio.h>#
    Main()
    {
    int h1,h2.i=1;
    print f ("p1:enter a number:")
    scanf("%d",h1);
    clrscr();
    while(i<=10)
    {
    printf("p2 rountd%dwhat is your guess?');
    if(h2>h1)
    printf("adad bozorgtaras mojadad adad ra vared konid/n);
    else
    if(h2<h1)
    printf('adad kochiktar ast dobare talash konid /n);
    else
    printf("you win";
    breek;
    }
    i++
    }
    if(i==11(;
    printf(you loos"(
    {

  28. #188

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    این هم چند برنامه ی ساده برای درس ساختمان داده ها و الگوریتم ها . فایل زیر حاوی این برنامه هاست :
    array و Binary search و Bubble Sort و پیاده سازی صف Queue و Insertion sort و merge sort و Quick sort و selection sort و پیاده سازی پشته stack و چند برنامه ی دیگر .

    برای دانلود اینجا و برای توضیحات بیشتر به وبلاگم یعنی اینجا کلیک کنید .

  29. #189

    Wink دانلود 2000 کد به زبان سی پلاس پلاس و سی و 2000 کد به زبان ویژوال بیسیک 6

    سلام
    یه فایل 460 مگابایتی رو تو سیستم تورنت قرار دادم که شامل 4000 کد سی و سی پی پی و ویژوال بیسیک هست که در مورد همه ی مباحث برنامه نویسی از الگوریتم گرفته تا برنامه های کاربردی کوچیک و بزرگ .که میتونید اونو به راحتی دانلود کنید . اگه با تورنت آشنایی ندارید اینجا کلیک کنید و بعد از آشنایی با تورنت فایل تورنت که در زیر قرار دادم رو با نرم افزار utorrent باز کنید و فایل 460 مگابایتی rar. رو بعد از دانلود اکسترک کنید و ازش استفاده کنید . نرم افزار تورنت رو هم در زیر قرار دادم .

    موفق باشید .
    فایل های ضمیمه فایل های ضمیمه

  30. #190
    کاربر دائمی آواتار saber187518
    تاریخ عضویت
    خرداد 1388
    محل زندگی
    همین دور و برا
    پست
    311

    نقل قول: دانلود 2000 کد به زبان سی پلاس پلاس و سی و 2000 کد به زبان ویژوال بیسیک 6

    با سلام
    دوستان عزیز برنامه زیر مقدار لاگرانژ رو محاسبه میکنه

    #include <iostream.h>
    #include <conio.h>
    #include <stdlib.h>
    void main()
    {
    float xi[100],fi[100],temp,li[100],x,p;
    int i,n,j;
    cout <<"enter number of sentences:\t";
    cin >>n;
    cout <<"enter value of x:\t";
    cin >>x;
    for (i=0;i<n;i++)
    {
    cout <<"enter xi["<<i<<"] :\t";
    cin >>xi[i];
    cout <<"enter fi["<<i<<"] :\t";
    cin >>fi[i];
    }//end of for
    for (i=0;i<n;i++)
    {
    li[i]=1;
    for (j=0;j<n;j++)
    {
    if(i==j)
    continue;
    li[i]*=(x-xi[j])/(xi[i]-xi[j]);
    }//end of for
    }//end of for
    clrscr();
    for (i=0;i<n;i++)
    li[i]=li[i]*fi[i];
    p=0;
    for (i=0;i<n;i++)
    p+=li[i];
    cout <<"P"<<n-1<<"=\t"<<p;
    getch();
    }//end of program

  31. #191

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    پروِه بازی زیر دریایی
    TAHESH.rar

  32. #192

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    اینم یه برنامه که عدد هارو به شکل زیر چاپ میکنه

    wer.jpg
    فایل های ضمیمه فایل های ضمیمه

  33. #193

    برنامه پر کردن یه شکل با یه کاراکتر

    یه برنامه هست که یه شکل با ضلع های مشخص را با استفاده از کاراکتر مشخص طی زمان مشخص پر می کنه ... خوشگله با ویژوال 2010 ران کردم!

    #include <iostream>
    #include <conio.h>
    #include <stdio.h>
    #include <windows.h>

    using namespace std;
    void gotoxy(int x,int y){

    COORD pos;
    HANDLE hConsole = GetStdHandle ( STD_OUTPUT_HANDLE );
    if (INVALID_HANDLE_VALUE != hConsole)
    {
    pos.X = x;
    pos.Y = y;
    SetConsoleCursorPosition( hConsole, pos );
    }
    }

    int main() {
    // maghadir m , n andazeh zele shekl mored nazar hast, anha ra taghir dahid va natigeh ra bebinid
    //baray aroom tar kardan ya sari tar kardan meghadar 10 ra dar ha tabeh Sleep taghir bedahid
    int n= 50, m=50 ,s=0;
    while ( m && n){
    for (int i=s ; i<= n ; i++){
    gotoxy(i , s );
    cout<<"#";
    Sleep(10);
    }

    for (int i=1 ; i <= m ; i++){
    gotoxy(n , i );
    cout<<"#";
    Sleep(10);
    }

    for (int i=n-1 ; i >= 0 ;i--){
    gotoxy(i , m );
    cout<<"#";
    Sleep(10);
    }

    for (int i=m-1 ; i > 0 ; i--){
    gotoxy(s , i );
    cout<<"#";
    Sleep(10);
    }

    n--;
    m--;
    s++;
    }


    getch();
    return 0 ;
    }

  34. #194

    اعداد یک تا نه به صورت شکل لوزی

    اینم یه نوع تغییر داده شده برنامه ی بالای دوستمون!



    #include <iostream>
    #include <conio.h>
    #include <stdio.h>

    using namespace std;

    int main() {



    for (int i=1 ; i <= 9 ; i++){

    for (int j=i ; j <= 8 ; j++) {
    cout<<" ";
    }

    for (int k=1 ; k<=i ; k++){

    cout<<k<<" ";
    }

    for (int l=i-1 ; l >0 ; l--){
    cout<<l<<" ";
    }

    for (int j=i ; j <= 8 ; j++) {
    cout<<" ";
    }
    cout<<endl;
    }
    for (int i=8 ; i >0 ; i--){

    for (int j=1 ; j <= 9-i ; j++) {
    cout<<" ";
    }

    for (int k=1 ; k<=i ; k++){

    cout<<k<<" ";
    }

    for (int l=i-1 ; l >0 ; l--){
    cout<<l<<" ";
    }

    for (int j=1 ; j <= 9-i ; j++) {
    cout<<" ";
    }
    cout<<endl;
    }
    getch();
    return 0 ;
    }
    عکس های ضمیمه عکس های ضمیمه
    • نوع فایل: jpg 1.jpg‏ (26.5 کیلوبایت, 1041 دیدار)

  35. #195
    کاربر جدید آواتار ruhollah2009
    تاریخ عضویت
    آبان 1388
    محل زندگی
    ایران
    پست
    7

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    مثلث خیام را در برخی منابع به ندرت «مثلث خیام-پاسکال-نیوتن» نیز می‌گویند. این مثلث در زبان‌های گوناگون نام‌های دیگری نیز دارد در زبان انگلیسی «مثلث پاسکال»، ایتالیایی «مثلث تارتالیا» و در زبان چینی «مثلث یانگ هویی» نام گرفته‌است.
    من امروز مسئله مثلث خیام را با C++‎ و یه آرایه دو بعدی 6*6 حل کردم که شما دوستان میتونید اندازه اون را به دلخواه زیاد کنید
    امیدوارم بتونه در زمینه مسئله خیام به شما کمک کنه

    ==============================
    #include<iostream.h>
    int main()
    {
    int khayam[6][6],i,j;
    for(i=0 ; i<=5 ; i++)
    khayam[0][i]=khayam[i][0]=1;
    for(i=1 ; i<=5 ; i++)
    for(j=1 ; j<=5 ; j++)
    khayam[i][j]=khayam[i][j-1]+khayam[i-1][j];
    for(i=0 ; i<=5 ; i++)
    {
    for(j=0 ; j<=5 ; j++)
    cout<<khayam[i][j]<<"\t";
    cout<<endl;
    }
    }


  36. #196

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    کلاس چند جمله ای ها به زبان C++‎:
    #include<conio.h>
    #include<iostream.h>
    #define Max 20
    class Poly;
    class PolyNode
    {
    friend Poly;
    float Coef;
    int Pow;
    };
    class Poly
    {
    int n;
    PolyNode Data[Max];
    public:
    void equal(Poly a,Poly b);
    void moshtaghpoly(void);
    void search(void);
    void SortPoly(void);
    void ReadPoly(void);
    void WritePoly(void);
    void AddPoly(Poly a,Poly b);
    void SubtractPoly(Poly a,Poly b);
    };
    void Poly::SortPoly(void)
    {
    int i,j;
    PolyNode item;
    for(i=n-1;i>0;i--)
    for(j=0;j<i;j++)
    if(Data[j].Pow<Data[j+1].Pow)
    {
    item=Data[j];
    Data[j]=Data[j+1];
    Data[j+1]=item;
    }
    while(i<n-1)
    if(Data[i].Pow==Data[i+1].Pow)
    {
    Data[i].Coef+=Data[i+1].Coef;
    for(j=i+1;j<n-1;j++)Data[j]=Data[j+1];
    n--;
    }else i++;
    }
    void Poly::ReadPoly(void)
    {
    int i;
    cout<<"\nPlease enter parts of poly : ";
    cin>>n;
    cout<<"\nPlease enter Polynomial : \n\n";
    for(i=0;i<n;i++)
    {
    cin>>Data[i].Coef;
    cout<<" x^";
    cin>>Data[i].Pow;
    cout<<" +"<<endl;
    }
    }
    void Poly::WritePoly(void)
    {
    int i;
    cout<<"\n";
    for(i=0;i<n;i++)cout<<Data[i].Coef<<"X^"<<Data[i].Pow<<" + ";
    }
    void Poly::AddPoly(Poly a,Poly b)
    {
    int i,j,k;
    i=j=k=0;
    while(i<a.n&&j<b.n)
    {
    if(a.Data[i].Pow>b.Data[j].Pow)
    {
    Data[k].Coef=a.Data[i].Coef;
    Data[k++].Pow=a.Data[i++].Pow;
    }
    else if(a.Data[i].Pow<b.Data[j].Pow)
    {
    Data[k].Coef=b.Data[j].Coef;
    Data[k++].Pow=b.Data[j++].Pow;
    }
    else if(a.Data[i].Coef+b.Data[j].Coef)
    {
    Data[k].Coef=a.Data[i].Coef+b.Data[j].Coef;
    Data[k++].Pow=a.Data[i++].Pow;
    j++;
    }
    else
    {
    i++;
    j++;
    }
    }
    while(i<a.n)
    {
    Data[k].Coef=a.Data[i].Coef;
    Data[k++].Pow=a.Data[i++].Pow;
    }
    while(j<b.n)
    {
    Data[k].Coef=b.Data[j].Coef;
    Data[k++].Pow=b.Data[j++].Pow;
    }
    n=k;
    }
    void Poly::SubtractPoly(Poly a,Poly b)
    {
    int i,j,k;
    i=j=k=0;
    while(i<a.n&&j<b.n)
    {
    if(a.Data[i].Pow>b.Data[j].Pow)
    {
    Data[k].Coef=a.Data[i].Coef;
    Data[k++].Pow=a.Data[i++].Pow;
    }
    else if(a.Data[i].Pow<b.Data[j].Pow)
    {
    Data[k].Coef=b.Data[j].Coef;
    Data[k++].Pow=b.Data[j++].Pow;
    }
    else if(a.Data[i].Coef-b.Data[j].Coef)
    {
    Data[k].Coef=a.Data[i].Coef-b.Data[j].Coef;
    Data[k++].Pow=a.Data[i++].Pow;
    j++;
    }
    else
    {
    i++;
    j++;
    }
    }
    while(i<a.n)
    {
    Data[k].Coef=a.Data[i].Coef;
    Data[k++].Pow=a.Data[i++].Pow;
    }
    while(j<b.n)
    {
    Data[k].Coef=b.Data[j].Coef;
    Data[k++].Pow=b.Data[j++].Pow;
    }
    n=k;
    }
    void Poly::moshtaghpoly(void){
    int i;
    for(i=0;i<n;++i){
    Data[i].Coef*=Data[i].Pow;
    Data[i].Pow--;}}
    void Poly::search(void){
    int x;
    cout<<"\nenter a number for search:";
    cin>>x;
    for(int i=0;i<n;++i){
    if(x==Data[i].Coef)
    cout<<"\nThe number founded!";
    break;}
    cout<<"\nThe number not found";
    }
    void Poly::equal(Poly a,Poly b){
    if(a.n!=b.n)
    cout<<"not equal";
    for(int i=0;i<a.n;++i)
    if(a.Data[i].Pow!=b.Data[i].Pow||a.Data[i].Coef!=b.Data[i].Coef)
    cout<<"equql!";
    else
    cout<<"not equal!";}

    void main(void)
    {
    Poly a,b,c;
    char Sign;
    a.ReadPoly();
    a.SortPoly();
    cout<<"\nPlease enter sign(+,-) : ";
    cin>>Sign;
    b.ReadPoly();
    b.SortPoly();
    b=a;
    b.WritePoly();
    switch(Sign)
    {
    case'+':
    c.AddPoly(a,b);
    break;
    case'-':
    c.SubtractPoly(a,b);
    break;}
    c.SortPoly();
    cout<<"\n\nAnswer Is : \n";
    c.WritePoly();
    a.moshtaghpoly();
    cout<<"\nmoshtaghe a is:";
    a.WritePoly();
    cout<<"in a:";
    a.search();
    getche();
    }

  37. #197

    Thumbs up Trie Dictionary

    ديکشنري با ساختار Trie
    [Trie Dictionary]
    هدف: آشنايي دوستان با ساختار Trie
    توضيح مختصر: شما يک سري کلمات رو به ديکشنري تون اضافه ميکنين و بعد يه متن وارد ميکنين. با انتخواب take effect برنامه اون کلماتي رو که با ديکشنري مچ بوده (درست بوده) رو چاپ ميکنه
    اگه خواستين کلماتي که داخل ديکشنري نيست رو چاپ کنه خط 163 رو به
    if(!(t->Search(str)))
    تغيير بدين
    فایل های ضمیمه فایل های ضمیمه

  38. #198
    کاربر جدید
    تاریخ عضویت
    دی 1388
    محل زندگی
    یه گوشه ای از زمین خدا
    پست
    20

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    من خیلی با تاپیک آشنایی ندارم اگر برنامه تکراریه میتونید حذفش کنید

    محاسبه ماتریس معکوس n*n به زبان سی ++
    بسیار مفید برای تمرین با کار کردن با آرایه های داینامیک دو بعدی



    #include <iostream>
    using namespace std;
    double determinant( double** matrix, int size);
    int adjoint(double** matrix, double** temp, int row, int col, int size);
    void inversion(double **matrix, int size, double **inverse);
    int negative = 0 ;

    ///////////////////////////// Main Methode \\\\\\\\\\\\\\\\\\\\\\\\\\\

    int main (){

    int size ;
    cout << "size: " <<endl ;
    cin>>size;
    double ** matrix = new double* [size];
    for (int i=0 ; i<size ; i++ )
    matrix[i] = new double [size];

    for (int i=0 ; i<size ; i ++){
    for (int j=0 ; j<size ; j++){
    cout << "matrix[" <<i << "][" <<j<<"]:" ;
    cin >> matrix [i][j];
    }
    }

    double ** res = new double* [size];
    for (int i=0 ; i<size ; i++ )
    res[i] = new double [size];

    inversion (matrix , size , res) ;

    if (negative == 1 )
    cout << "No Inverse " <<endl;
    else {
    for (int i=0 ; i<size ; i ++){
    for (int j=0 ; j<size ; j++){
    cout << res [i][j] <<" ";
    }
    cout <<endl ;
    }

    }
    for(int i=0;i<size;i++)
    delete [] matrix[i];
    delete [] matrix;

    for(int i=0;i<size;i++)
    delete [] res[i];
    delete [] res;
    return 0 ;
    }

    ///////////////////////////// Inversion Methode \\\\\\\\\\\\\\\\\\\\\\\\\\\

    void inversion(double **matrix, int size, double **inverse)
    {

    if (determinant(matrix,size) ==0 ){
    negative = 1 ;
    return ;
    }

    double det = 1.0 / determinant(matrix,size);
    double *temp = new double[(size-1)*(size-1)];
    double ** temp2 = new double*[size-1];
    for(int i=0;i<size-1;i++)
    temp2[i] = temp+(i*(size-1));

    for(int j=0;j<size;j++)
    {
    for(int i=0;i<size;i++)
    {
    adjoint(matrix,temp2,j,i,size);
    inverse[i][j] = det*determinant(temp2,size-1);
    if( (i+j)%2 == 1)
    inverse[i][j] = -inverse[i][j];
    }
    }
    delete [] temp;
    delete [] temp2;
    }

    ///////////////////////////// Determinant Methode \\\\\\\\\\\\\\\\\\\\\\\\\\\

    double determinant( double** matrix, int size){
    double sum =0 ;
    int k ;

    if( size == 1 )
    return matrix[0][0];

    double ** temp ;
    temp = new double* [size-1];
    for(int i=0; i<size-1;i++)
    temp[i] = new double [size - 1];

    for(int i = 0; i < size; i++ )
    {
    adjoint( matrix, temp, 0, i , size);
    if (i%2 == 1 )
    k = -1 ;
    else
    k = 1;

    sum += k * matrix[0][i] * determinant (temp,size-1);
    }
    for(int i=0;i<size-1;i++)
    delete [] temp[i];
    delete [] temp;
    return sum;
    }

    ///////////////////////////// Adjoint Methode \\\\\\\\\\\\\\\\\\\\\\\\\\\

    int adjoint(double** matrix, double** temp, int row, int col, int size){

    int colCount=0,rowCount=0;
    for(int i = 0; i < size; i++ )
    {
    if( i != row )
    {
    colCount = 0;
    for(int j = 0; j < size; j++ )
    { if( j != col )
    {
    temp [rowCount][colCount] = matrix[i][j];
    colCount++;
    }
    }
    rowCount++;
    }
    }
    return 1;
    }

    منبع

  39. #199
    کاربر دائمی آواتار V0RTEX
    تاریخ عضویت
    آذر 1389
    محل زندگی
    kernel
    پست
    106

    Cool نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    برنامه ی بسط دوجمله‌ای
    نمونه ورودی:
    (3x+2y)^4
    compiler:visual studio 2010
    #include <iostream>
    #include <vector>
    #include <string>
    using namespace std;
    unsigned long long bin(int n,int k);
    int conv(char c);
    int main()
    {
    system("color e0");
    int n(0),x(1),y(1);
    char xx('x'),yy('y');
    bool p(true);
    string str;
    getline(cin,str);
    //( -/'' num/'' char -/+ num/'' char)^num
    //0 1 2 3 4 5 6 7
    int ind=1;
    if(str[ind]=='-')
    {
    x*=-1;
    ind++;
    }
    if(conv(str[ind]) >=0 && conv(str[ind]) <= 9)
    {
    vector<int> ss;
    for(int i=ind;(conv(str[i]) >=0 && conv(str[i]) <= 9);i++)
    ss.push_back(conv(str[i]));
    bool xim=true;
    if(x==-1)
    xim=false;
    x=0;
    for(int k=ss.size()-1,t=0;k>=0;k--,t++)
    x+=ss[k]*powl(10,t);
    if(!xim)
    x=-x;
    ind+=ss.size();
    xx=str[ind];
    }
    else
    xx=str[ind];
    ind++;
    if(str[ind]=='-')
    p=false;
    ind++;
    if(conv(str[ind]) >=0 && conv(str[ind]) <= 9)
    {
    vector<int> ss;
    for(int i=ind;(conv(str[i]) >=0 && conv(str[i]) <= 9);i++)
    ss.push_back(conv(str[i]));
    bool xim=true;
    if(y==-1)
    xim=false;
    y=0;
    for(int k=ss.size()-1,t=0;k>=0;k--,t++)
    y+=ss[k]*powl(10,t);
    if(!xim)
    y=-y;
    ind+=ss.size();
    yy=str[ind];
    }
    else
    yy=str[ind];
    ind+=3;
    int tlo;
    for(tlo=ind;tlo<str.size();tlo++);
    for(int k=tlo-1,t=0;k>=ind;k--,t++)
    n+=conv(str[k])*powl(10,t);
    //--------------------------------------------
    system("cls");
    cout << str << "=";
    long long r=x*y;
    bool qwe=false;
    for(int i=0;i<=n;i++)
    {
    unsigned long long s=bin(n,i);
    r=powf(x,n-i)*powf(y,i);
    long long g=s*r;
    cout << "(";
    if(g!=1 && g!=-1 && i!=n && i!=0)
    cout << g;
    else if(i==n && powf(y,i)!=1)
    cout << powf(y,i);
    else if(i==0 && powf(x,n-i)!=1)
    cout << powf(x,n-i);
    if(g==-1)
    cout << "-";
    if(n-i != 0 && n-i!=1)
    cout << xx <<"^" << n-i;
    else if(n-i ==1)
    cout << xx;
    else
    cout << "";
    if( i != 0 && i!=1)
    cout << yy << "^" << i;
    else if( i ==1)
    cout << yy;
    cout << ")";
    if(i != n && p)
    cout << "+";
    else if(i != n && !p)
    {
    char show=qwe?'+':'-';
    cout << show;
    qwe=!qwe;
    }
    }
    cout << endl;
    system("pause");
    return 0;
    }
    unsigned long long bin(int n,int k)
    {
    vector<vector<unsigned long long> > b;
    vector<unsigned long long> em;
    for(int i=0;i<=n;i++)
    {
    b.push_back(em);
    for(int j=0;j<=min(i,k);j++)
    if(j==0 || j==i)
    if(j >= int(b[i].size()))
    b[i].push_back(1);
    else
    b[i][j]=1;
    else
    if(j >= int(b[i].size()))
    b[i].push_back(b[i-1][j-1]+b[i-1][j]);
    else
    b[i][j]=b[i-1][j-1]+b[i-1][j];
    }
    return b[n][k];
    }
    int conv(char c)
    {
    return c - '0';
    }
    فایل های ضمیمه فایل های ضمیمه

  40. #200

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    من هم یه برنامه ارم که با ++c نوشتم. درباره فروش بلیط اتوبوس هست. جالبه
    #include <iostream>
    #include <conio.h>
    #include <stdlib.h>
    using namespace std;
    int main ()
    {
    char bus[46]={'\0'} ;
    int av=0,men=0,women=0,option,req=0 ;
    int x,y,z ;
    while (1)
    {

    cout<<"\n 1-Buy New Ticket\t2-View Sold Seats\t3-Exit\n" ;
    cout<<" ----------------------------------------------------\n" ;
    cout<<" Select Your Operation : " ;
    cin>>option ;
    switch (option)
    {
    case 1 :
    {
    /*clrscr() ;*/
    for (int i=0 ; i<46 ; ++i)
    {
    if (bus[i]=='\0')
    {
    av=i ;
    break;
    }
    }
    cout<<"\n "<<45-av<<" tickets are available\n" ;
    if (45-av==0)
    {
    getch() ;
    break ;
    }
    cout<<"\n Enter the number of tickets you want : " ;
    cin>>req ;
    if (45-av<req)
    {
    cout<<"\n The tickets are not available !!! " ;
    getch() ;
    break ;
    }
    cout<<"\n Enter the number of men & women by the pattern " ;
    cin>>men>>women ;
    if (av==0)
    {
    x=av;
    for (y=0 ; y<women ; ++y,++x)
    {
    bus[x]='f' ;
    }
    for (z=0 ; z<men ; ++z,++x)
    {
    bus[x]='m' ;
    }
    break;
    }
    if (av>=40)
    {
    ///
    if (av==40)
    {
    x=av;
    for (y=0 ; y<women ; ++y,++x)
    {
    bus[x]='f' ;
    }
    for (z=0 ; z<men ; ++z,++x)
    {
    bus[x]='m' ;
    }
    break;
    }
    ///
    if (men>0 && women>0)
    {
    if (bus[av-1]=='f')
    {
    x=av;
    for (y=0 ; y<women ; ++y,++x)
    {
    bus[x]='f' ;
    }
    for (z=0 ; z<men ; ++z,++x)
    {
    bus[x]='m' ;
    }
    break;
    }
    if (bus[av-1]=='m')
    {
    x=av;
    for (y=0 ; y<men ; ++y,++x)
    {
    bus[x]='m' ;
    }
    for (z=0 ; z<women ; ++z,++x)
    {
    bus[x]='f' ;
    }
    break;
    }
    }
    //////
    if (men==0 ||women==0)
    {
    x=av ;
    if (men==0)
    {
    if (bus[av-1]=='f')
    {
    for (z=0 ; z<women ; ++z,++x)
    {
    bus[x]='f' ;
    }
    }
    else
    {
    cout<<"\n This Seat is not available !!" ;
    getch() ;
    break ;
    }
    }
    if (women==0)
    {
    if (bus[av-1]=='m')
    {
    for (y=0 ; y<men ; ++y,++x)
    {
    bus[x]='m' ;
    }
    }
    else
    {
    cout<<"\n This Seat is not available !!" ;
    getch() ;
    break;
    }
    }
    break ;
    }
    }
    if (men>0 && women>0)
    {
    if (bus[av-1]=='f')
    {
    x=av;
    for (y=0 ; y<women ; ++y,++x)
    {
    bus[x]='f' ;
    }
    for (z=0 ; z<men ; ++z,++x)
    {
    bus[x]='m' ;
    }
    break;
    }
    if (bus[av-1]=='m')
    {
    x=av;
    for (y=0 ; y<men ; ++y,++x)
    {
    bus[x]='m' ;
    }
    for (z=0 ; z<women ; ++z,++x)
    {
    bus[x]='f' ;
    }
    break;
    }
    }
    if(men==0 || women==0)
    {
    if (av%4==0)
    {
    x=av;
    if (women==0)
    {
    for (y=0 ; y<men ; ++y,++x)
    {
    bus[x]='m' ;
    }
    }
    if (men==0)
    {
    for (z=0 ; z<women ; ++z,++x)
    {
    bus[x]='f' ;
    }
    }
    break ;
    }
    //
    if (av==2 ||av%4==2)
    {
    x=av;
    if (women==0)
    {
    for (y=0 ; y<men ; ++y,++x)
    {
    bus[x]='m' ;
    }
    }
    if (men==0)
    {
    for (z=0 ; z<women ; ++z,++x)
    {
    bus[x]='f' ;
    }
    }
    break;
    }
    //
    if (av==1 || av==3 || av%4==1 || av%4==3)
    {
    x=av;
    if (women==0)
    {
    if (bus[av-1]=='m')
    {
    for (y=0 ; y<men ; ++y,++x)
    {
    bus[x]='m' ;
    }
    }
    else
    {
    cout<<"\n This Seat is not available !!" ;
    getch() ;
    break;
    }
    }
    if (men==0)
    {
    if (bus[av-1]=='f')
    {
    for (z=0 ; z<women ; ++z,++x)
    {
    bus[x]='f' ;
    }
    }
    else
    {
    cout<<"\n This Seat is not available !!" ;
    getch() ;
    break ;
    }
    }
    break;
    }
    //
    }
    break;
    }
    case 2 :
    {
    /*clrscr() ;*/
    for (int j=0 ; j<45 ; ++j)
    {
    if (j<=40)
    {
    if (j%4==0)
    cout<<"\n " ;
    if (bus[j]!='\0')
    cout<<bus[j] ;
    else
    cout<<"0" ;
    if (j==1 || j%4==1)
    cout<<" " ;
    }
    else
    {
    if (bus[j]!='\0')
    cout<<bus[j] ;
    else
    cout<<"0" ;
    }
    }
    getch() ;
    break ;
    }
    case 3 :
    {
    exit(1) ;
    }
    }
    }
    return 0 ;
    }

صفحه 5 از 8 اولاول ... 34567 ... آخرآخر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •