VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

請會C語言的,看看能不能翻成VFP

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
ufochen



註冊時間: 2003-09-17
文章: 165


第 1 樓

發表發表於: 星期四 二月 01, 2007 1:01 am    文章主題: 請會C語言的,看看能不能翻成VFP 引言回覆

會自動找最佳方向走的‘老鼠走迷宮’程式!其中利用 count 陣列來儲存每個點走過次數,進而求出四個方向裡頭最佳方向!
代碼:


#include <cstdlib>
#include <iostream>



using namespace std;



int main()
{
    int x = 1, y = 1; // Save X and Y of the Array, Maze
    int maze[10][10] = { { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
                                 { 1, 0, 0, 0, 1, 0, 1, 0, 0, 1},
                                 { 1, 1, 1, 0, 1, 0, 1, 1, 0, 1},
                                 { 1, 0, 0, 0, 1, 0, 0, 0, 0, 1},
                                 { 1, 0, 1, 1, 1, 0, 1, 0, 1, 1},
                                 { 1, 0, 1, 0, 0, 0, 1, 0, 1, 1},
                                 { 1, 0, 0, 0, 1, 0, 1, 0, 0, 1},
                                 { 1, 0, 1, 1, 1, 0, 1, 0, 1, 1},
                                 { 1, 0, 1, 0, 0, 0, 1, 0, 0, 1},
                                 { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}};
                         
    int min_x = 1, min_y = 1; // Save the Min X and Y (in Four Direction) of the Array, Count
    int count[10][10] = { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
                                  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
                                  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
                                  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
                                  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
                                  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
                                  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
                                  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
                                  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
                                  { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}};
   
    while(!(x == 8 && y == 8 )) {
        int d; // Save the Best Direction Now
       
        // Print Maze
        for(int i = 0; i < 10; i++) {
          for(int j = 0; j < 10; j++)
            if(i == x && j == y)
                cout << "@  ";
            else if(maze[i][j] == 1)
                cout << "|  ";
            else 
                cout << "   ";
          cout << "\n"; 
        }
        system("PAUSE");
   
        // Choose Direction
        if(maze[x-1][y] == 0) {
            d = 0;
            min_x = x - 1;
            min_y = y;
        }
        if(maze[x+1][y] == 0 && count[x+1][y] <= count[min_x][min_y]) {
            d = 1;
            min_x = x+1;
            min_y = y;
        }
        if(maze[x][y-1] == 0 && count[x][y-1] <= count[min_x][min_y]) {
            d = 2;
            min_x = x;
            min_y = y-1;
        }
        if(maze[x][y+1] == 0 && count[x][y+1] <= count[min_x][min_y]) {
            d = 3;
            min_x = x;
            min_y = y+1;
        }
        count[min_x][min_y]++;       



        // Move
        switch(d) {
            // Up     
            case 0:
                 x--;
                 break;
            // Down
            case 1:
                 x++;
                 break;
            // Left
            case 2:
                 y--;
                 break;
            // Right
            case 3:
                 y++;
                 break;   
            default:
                 cout << "Error\n";
        }
    }



    cout << "\n==========到達終點==========\n\n";
回頂端
檢視會員個人資料 發送私人訊息
syntech



註冊時間: 2003-05-16
文章: 4215
來自: Taipei,Taiwan

第 2 樓

發表發表於: 星期四 二月 01, 2007 8:37 am    文章主題: 引言回覆

會C ,
太簡單不想翻.

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
garfield
Site Admin


註冊時間: 2003-01-30
文章: 2158


第 3 樓

發表發表於: 星期四 二月 01, 2007 2:23 pm    文章主題: 引言回覆

用一般程式語言的語法(變數/判斷/迴圈)來看就可看出大概的樣子,
又不是要你修改原程式,
不一定要會 C .

_________________
利用>>搜尋<<的功能會比問的還要快得到答案.
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
syntech



註冊時間: 2003-05-16
文章: 4215
來自: Taipei,Taiwan

第 4 樓

發表發表於: 星期四 二月 01, 2007 5:02 pm    文章主題: 引言回覆

這個範例已經很有良心了,
沒有使用"天書"語法. ^_^

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
ufochen



註冊時間: 2003-09-17
文章: 165


第 5 樓

發表發表於: 星期五 二月 02, 2007 6:54 am    文章主題: 引言回覆

syntech 寫到:
這個範例已經很有良心了,
沒有使用"天書"語法. ^_^

對於懂的人也許真的很簡單,但對於不懂的人可能真的很困難,如果找只是舉手之勞
,幫幫人家又何仿?這個討論區成立的宗旨不是在這裡嗎?
回頂端
檢視會員個人資料 發送私人訊息
syntech



註冊時間: 2003-05-16
文章: 4215
來自: Taipei,Taiwan

第 6 樓

發表發表於: 星期五 二月 02, 2007 8:40 am    文章主題: 引言回覆

這種話已經聽到不想聽了.

回答的人最大,
憑什麼會的人就要告訴你,
大家都是從不會被逼到會的.

不想受氣就多學一種工具.

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
ufochen



註冊時間: 2003-09-17
文章: 165


第 7 樓

發表發表於: 星期五 二月 02, 2007 10:21 am    文章主題: 引言回覆

syntech 寫到:
這種話已經聽到不想聽了.

回答的人最大,
憑什麼會的人就要告訴你,
大家都是從不會被逼到會的.

不想受氣就多學一種工具.

是的!受教了!但我年紀已大!學VFP只是當消遣!對我用處不大,我並沒有說會的人一定要告訴我,學會了是你的本事,要不要告訴人家,是你的自由!我並不強求!
回頂端
檢視會員個人資料 發送私人訊息
marvin



註冊時間: 2004-06-01
文章: 321


第 8 樓

發表發表於: 星期五 二月 02, 2007 11:45 am    文章主題: 引言回覆

你對C全不了解, 卻要把C改為VFP當消遣, 這.....
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作