在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

C語言+easyX帶你實現:掃雷游戲(六邊形升級版)!

C語言編程學習基地 ? 來源:C語言編程學習基地 ? 2023-03-16 15:57 ? 次閱讀

每天一個編程小項目,提升你的編程能力!

程序簡介

掃雷游戲升級版!六邊形掃雷(尋寶模式)稍稍介紹一下哈~

他也是要把所有安全的地方點出來。

他沒有掃雷模式的消零算法。每一個安全的點都需要單獨挖出來,一次顯示一個格子。

添加了生命值的概念,也就是說存在一定的容錯。

顯示的數字有別于掃雷模式。點擊寶藏點,會顯示周圍寶藏點數量,綠色;點擊地雷,會顯示周圍地雷數量,黑色。注意,這個數字不包括自己,顯示的范圍自然就是 0~6 了。點擊地雷會減生命值,生命值歸零則結束。

所以雷和寶藏都是有價值的,都是能給準確信息的。

我能給一個參考難度:占總格子數 40%的地雷,占總地雷數 50 %的生命值。

【注:需要編譯器+圖形庫插件可以在文末領取】

程序運行展示

c24466ac-c3c4-11ed-bfe3-dac502259ad0.jpg

簡單了解游戲后我們就來試試吧?。ㄖ苯由显创a,大家可以看注釋)

////////////////////////////////////////
// 程序:六邊形掃雷:尋寶模式


# include 
# include 
# include 
# include 


static double pi = acos (-1.0);      // 圓周率 π
static HWND hOut;            // 畫布


// 定義一個結構體,按鈕
struct Node1
{
  int posx1, posy1, posx2, posy2;    // 坐標
  LPTSTR text;            // 文字
  int mod;              // 狀態
};


// 定義一個結構體,六邊形格子
struct Node2
{
  int i, j, k;            // 特征值
  int mod_life;            // 翻開
  int mod_mine;            // 雷
  int mod_flag;            // 標記
  int posx, posy;            // 坐標
  int num_mine;            // 周圍雷數
  int num_peace;            // 周圍空地塊
};


// 定義一個類
class Gary
{
public:
  void carry ();            // 主進程
  void initialization ();        // 初始化
  void draw_scene ();          // 繪制界面函數
  void draw_box (int num_box);    // 繪制格子
  void draw_flag (int num_box);    // 繪制標記
  void draw_num (int num_box, int num);  // 繪制數字
  void move ();            // 窗口主視角
  void create ();            // 地雷生成
  void check_over ();          // 結束判定


  int num_button;            // 按鈕數量參數
  int exit_carry;            // 主循函數控制參數
  int exit_move;            // 開始界面控制參數
  int exit_game;            // 游戲進行控制參數
  int num_life;            // 生命值
  int num_size;            // 邊長
  int num_mine;            // 總雷數
  int num_box;            // 總地塊數
  int num_flag;            // 標記數
  COLORREF color_text[2];        // 按鈕繪制填充
  Node1 boxm[30];            // 按鈕,預制 30 個
  Node2 box[1000];          // 地塊
};


// 標記繪制函數
void Gary::draw_flag (int num_box)
{
  setlinestyle (PS_SOLID, 1);
  setlinecolor (BLACK);
  line (box[num_box].posx + 2, box[num_box].posy + 7, box[num_box].posx + 2, box[num_box].posy - 7);
  setfillcolor (LIGHTRED);
  setlinecolor (LIGHTRED);
  fillrectangle (box[num_box].posx - 7 + 2, box[num_box].posy - 7, box[num_box].posx + 2, box[num_box].posy - 1);
}


// 數字繪制函數
void Gary::draw_num (int num_box, int num)
{
  int i;
  // 畫六邊形,格子處于點擊后狀態
  setfillcolor (RGB (170, 170, 170));
  setlinecolor (RGB (85, 85, 85));
  POINT pts[6];
  setlinestyle (PS_SOLID, 1);
  for (i = 0; i < 6; i++)
  {
    pts[i].x = long(box[num_box].posx + 14.0 * cos (60.0 * double (i) * pi / 180.0));
    pts[i].y = long(box[num_box].posy + 14.0 * sin (60.0 * double (i) * pi / 180.0));
  }
  fillpolygon (pts, 6);


  // 數字繪制
  TCHAR s[15];
  settextstyle (20, 0, _T ("Consolas"));
  _stprintf_s (s, _T ("%0.1d"), num);
  outtextxy (box[num_box].posx - 5, box[num_box].posy - 10, s);
}


// 場景繪制函數
void Gary::draw_scene ()
{
  TCHAR s[15];
  int i, j;
  setlinecolor (BLACK);
  setfillcolor (WHITE);
  setlinestyle (PS_SOLID, 1);
  // 主界面
  fillrectangle (401, 0, 650, 400);
  // 根據按鈕數量繪制  
  settextcolor (BLACK);
  for (i = 0; i < num_button; i++)
  {
    setfillcolor (color_text[boxm[i].mod]);
    setbkcolor (color_text[boxm[i].mod]);
    // 邊框
    fillrectangle (boxm[i].posx1, boxm[i].posy1, boxm[i].posx2, boxm[i].posy2);
    // 文字
    outtextxy (boxm[i].posx1 + (boxm[i].posx2 - boxm[i].posx1) / 2 - textwidth (boxm[i].text) / 2, boxm[i].posy1 + 4, boxm[i].text);
  }


  // 設置參數
  setbkcolor (WHITE);
  settextcolor (BLACK);
  setlinecolor (BLACK);


  // 變量繪制
  j = 25;
  // 生命值
  i = 1;
  setbkcolor (color_text[boxm[i].mod]);
  _stprintf_s (s, _T ("%0.1d"), num_life);
  outtextxy (boxm[i].posx1 + (boxm[i].posx2 - boxm[i].posx1) / 2 - textwidth (boxm[i].text) / 2, boxm[i].posy1 + j, s);
  // 邊長
  i = 2;
  setbkcolor (color_text[boxm[i].mod]);
  _stprintf_s (s, _T ("%0.1d"), num_size);
  outtextxy (boxm[i].posx1 + (boxm[i].posx2 - boxm[i].posx1) / 2 - textwidth (boxm[i].text) / 2, boxm[i].posy1 + j, s);
  // 總地雷數
  i = 3;
  setbkcolor (color_text[boxm[i].mod]);
  _stprintf_s (s, _T ("%0.1d"), num_mine);
  outtextxy (boxm[i].posx1 + (boxm[i].posx2 - boxm[i].posx1) / 2 - textwidth (boxm[i].text) / 2, boxm[i].posy1 + j, s);
  // 格子
  i = 4;
  setbkcolor (color_text[boxm[i].mod]);
  _stprintf_s (s, _T ("%0.1d"), num_box);
  outtextxy (boxm[i].posx1 + (boxm[i].posx2 - boxm[i].posx1) / 2 - textwidth (boxm[i].text) / 2, boxm[i].posy1 + j, s);
  // 標記數
  i = 5;
  setbkcolor (color_text[boxm[i].mod]);
  _stprintf_s (s, _T ("%0.1d"), num_flag);
  outtextxy (boxm[i].posx1 + (boxm[i].posx2 - boxm[i].posx1) / 2 - textwidth (boxm[i].text) / 2, boxm[i].posy1 + j, s);


  FlushBatchDraw ();
}


// 地雷生成函數
void Gary::create ()
{
  int i, j;
  // 設置雷
  for (i = 0; i < num_mine; i++)
  {
    // 隨機
    j = rand () % 1000;
    while (box[j].mod_mine == 1 || box[j].mod_life == 1)
    {
      // 隨機
      j = rand () % 1000;
    }
    // 是雷
    box[j].mod_mine = 1;
  }
  // 周邊雷數統計
  // 遍歷
  for (i = 0; i <= 888; i++)
  {
    if (box[i].mod_life == 0)
    {
      // 遍歷
      for (j = 0; j <= 999; j++)
      {
        // 排除自己
        if (j != i && box[j].mod_life == 0)
        {
          // 周圍六個
          if ((box[j].posx - box[i].posx) * (box[j].posx - box[i].posx) + (box[j].posy - box[i].posy) * (box[j].posy - box[i].posy) <= 900)
          {
            // 是雷
            if (box[j].mod_mine == 1)
            {
              // 周邊雷數參數加一
              box[i].num_mine++;
            }
            // 不是雷
            else if (box[j].mod_mine == 0)
            {
              // 周邊安全數參數加一
              box[i].num_peace++;
            }
          }
        }
      }
    }
  }
}


// 結束判斷函數
void Gary::check_over ()
{
  int i, k;
  k = 0;
  for (i = 0; i <= 888; i++)
  {
    // 每有一個翻開且不是雷的點,則加一
    if (box[i].mod_mine == 0 && box[i].mod_life == 1)
    {
      k++;
    }
  }
  // 全翻開則結束
  if (k == num_box - num_mine)
  {
    // 將所有未翻開雷做上標記
    for (i = 0; i <= 888; i++)
    {
      if (box[i].mod_mine == 1 && box[i].mod_life == 0)
      {
        draw_flag (i);
      }
    }
    // 勝利標志:笑臉
    setfillcolor (WHITE);
    setlinecolor (WHITE);
    fillrectangle (50, 20, 75, 45);
    settextstyle (30, 0, _T ("Wingdings"));
    setbkmode (TRANSPARENT);
    settextcolor (BLACK);
    outtextxy (50, 20, 0x4A);
    setbkmode (OPAQUE);
    settextstyle (20, 0, _T ("Consolas"));
    // 結束變化
    exit_game = 1;
    boxm[1].mod = 0;
    boxm[2].mod = 0;
    boxm[3].mod = 0;
    boxm[6].mod = 0;
    boxm[7].mod = 1;
    num_flag = 0;
    // 繪制
    draw_scene ();
  }
}


// 格子繪制函數
void Gary::draw_box (int num_box)
{
  int i;
  int posx, posy;


  // 六邊形繪制
  posx = box[num_box].posx;
  posy = box[num_box].posy;


  POINT pts[6];
  setlinestyle (PS_SOLID, 2);
  // 背景色
  setfillcolor (RGB (255, 255, 255));
  for (i = 0; i < 6; i++)
  {
    pts[i].x = long(posx + 14.0 * cos (60.0 * double (i) * pi / 180.0));
    pts[i].y = long(posy + 14.0 * sin (60.0 * double (i) * pi / 180.0));
  }
  solidpolygon (pts, 6);
  // 灰邊
  setlinecolor (RGB (85, 85, 85));
  line (pts[0].x, pts[0].y, pts[1].x, pts[1].y);
  line (pts[5].x, pts[5].y, pts[0].x, pts[0].y);
  line (pts[1].x, pts[1].y, pts[2].x, pts[2].y);
  // 前景色
  setfillcolor (RGB (170, 170, 170));
  for (i = 0; i < 6; i++)
  {
    pts[i].x = long(posx + 12.0 * cos (60.0 * double (i) * pi / 180.0));
    pts[i].y = long(posy + 12.0 * sin (60.0 * double (i) * pi / 180.0));
  }
  solidpolygon (pts, 6);
  FlushBatchDraw ();
}


// 初始化函數
void Gary::initialization ()
{
  int i, j, k, t;
  // 隨機初始化
  srand ((unsigned)time (NULL));
  // 顏色初始化
  color_text[0] = WHITE;
  color_text[1] = RGB (170, 170, 170);


  // 按鈕的初始化
  num_button = 10;


  // 坐標
  for (i = 0; i < 10; i++)
  {
    boxm[i].posx1 = 410 + 120 * (i % 2);
    boxm[i].posy1 = 25 + 75 * (i / 2);
    boxm[i].posx2 = 520 + 120 * (i % 2);
    boxm[i].posy2 = 75 + 75 * (i / 2);
  }


  // 內容
  boxm[0].text = _T ("尋寶模式");  boxm[1].text = _T ("生命值");
  boxm[2].text = _T ("地圖邊長");  boxm[3].text = _T ("總地雷數");
  boxm[4].text = _T ("總地塊數");  boxm[5].text = _T ("已標記數");
  boxm[6].text = _T ("開始");    boxm[7].text = _T ("重置");
  boxm[8].text = _T ("截圖");    boxm[9].text = _T ("退出");


  // 狀態
  boxm[0].mod = 1;
  boxm[1].mod = 1;
  boxm[2].mod = 1;
  boxm[3].mod = 1;
  boxm[4].mod = 1;
  boxm[5].mod = 1;
  boxm[6].mod = 1;
  boxm[7].mod = 0;
  boxm[8].mod = 0;
  boxm[9].mod = 0;


  num_box = 3 * num_size * (num_size - 1) + 1;
  num_flag = 0;


  // 繪制參數初始化
  setlinecolor (BLACK);
  setlinestyle (PS_SOLID, 1);
  settextstyle (20, 0, _T ("Consolas"));
  // 第一次繪制
  draw_scene ();


  // 重置
  setfillcolor (WHITE);
  fillrectangle (0, 0, 400, 400);


  // 平靜臉
  setfillcolor (WHITE);
  setlinecolor (WHITE);
  fillrectangle (50, 20, 75, 45);
  settextstyle (30, 0, _T ("Wingdings"));
  setbkmode (TRANSPARENT);
  settextcolor (BLACK);
  outtextxy (50, 20, 0x4B);
  setbkmode (OPAQUE);
  settextstyle (20, 0, _T ("Consolas"));


  // 格子初始化
  for (t = 0; t <= 999; t++)
  {
    // 已翻開
    box[t].mod_life = 1;
    // 城墻
    box[t].mod_mine = 2;
    // 坐標,點不到
    box[t].posx = -200;
    box[t].posy = -200;
  }


  // 初始化
  for (i = 0; i < num_size; i++)
  {
    for (j = 0; j < num_size; j++)
    {
      for (k = 0; k < num_size; k++)
      {
        // 特征值至少一個為零
        if (i == 0 || j == 0 || k == 0)
        {
          // 編號
          t = i * 100 + j * 10 + k;
          // 特征值
          box[t].i = i;
          box[t].j = j;
          box[t].k = k;
          // 未翻開
          box[t].mod_life = 0;
          // 不是雷
          box[t].mod_mine = 0;
          // 未標記
          box[t].mod_flag = 0;
          // 坐標
          box[t].posx = 200 + 22 * (j - k);
          box[t].posy = 200 - 25 * i + 13 * (j + k);
          // 周圍雷數初始化
          box[t].num_mine = 0;
          box[t].num_peace = 0;
          // 繪制地塊
          draw_box (t);
        }
      }
    }
  }
  // 地雷生成函數
  create ();
}


// 窗口主視角函數,獲取用戶操作
void Gary::move ()
{
  // 鼠標定義
  ExMessage m;
  TCHAR ss[15];
  int i, t;
  exit_move = 0;
  exit_game = 0;
  while (exit_move == 0)
  {
    // 鼠標信息
    if (peekmessage (&m, EM_MOUSE | EM_KEY))
    {
      // 左鍵單擊判斷
      if (m.message == WM_LBUTTONDOWN)
      {
        // 判斷是否點擊了格子
        if (m.x > 0 && m.y > 0 && m.x < 400 && m.y < 400 && exit_game == 0)
        {
          for (t = 0; t <= 888; t++)
          {
            // 成功點擊未標記的空格子
            if ((m.x - box[t].posx) * (m.x - box[t].posx) + (m.y - box[t].posy) * (m.y - box[t].posy) <= 144 && box[t].mod_life == 0 && box[t].mod_flag == 0)
            {
              // 點擊的格子不是雷
              if (box[t].mod_mine == 0)
              {
                // 綠色,安全,繪制
                settextcolor (LIGHTGREEN);
                draw_num (t, box[t].num_peace);
                // 改為翻開
                box[t].mod_life = 1;
              }
              // 點擊的格子雷
              else if (box[t].mod_mine == 1)
              {
                // 扣除生命值
                num_life--;
                // 黑色,危險,繪制
                settextcolor (BLACK);
                draw_num (t, box[t].num_mine);
                // 改為翻開
                box[t].mod_life = 1;
                // 生命值減為零
                if (num_life <= 0)
                {
                  // 失敗標志:哭臉
                  setfillcolor (WHITE);
                  setlinecolor (WHITE);
                  fillrectangle (50, 20, 75, 45);
                  settextstyle (30, 0, _T ("Wingdings"));
                  setbkmode (TRANSPARENT);
                  settextcolor (BLACK);
                  outtextxy (50, 20, 0x4C);
                  setbkmode (OPAQUE);
                  settextstyle (20, 0, _T ("Consolas"));
                  // 失敗
                  exit_game = 1;
                  boxm[1].mod = 0;
                  boxm[2].mod = 0;
                  boxm[3].mod = 0;
                  boxm[6].mod = 0;
                  boxm[7].mod = 1;
                  num_flag = 0;
                }
                // 繪制
                draw_scene ();
              }
              // 成功結束判斷
              check_over ();
              break;
            }
          }
        }


        // 判斷是否點擊了可點擊按鈕
        for (i = 0; i < num_button; i++)
        {
          if (m.x > boxm[i].posx1 && m.y > boxm[i].posy1 && m.x < boxm[i].posx2 && m.y < boxm[i].posy2 && boxm[i].mod == 0)
          {
            break;
          }
        }


        // 點擊矩形按鈕
        switch (i)
        {
        // 生命值:num_life
        case 1:
        {
          // 輸入
          InputBox (ss, 10, _T ("輸入生命值(1 ~ 999)"));
          _stscanf_s (ss, _T ("%d"), &i);
          if (i > 0 && i <= 999)
          {
            num_life = i;
          }
          else { MessageBox (hOut, _T ("輸入錯誤,不在范圍內"), _T ("來自小豆子的提醒"), MB_OK); }
          // 繪制
          draw_scene ();
          break;
        }
        // 地圖邊長:num_size
        case 2:
        {
          // 輸入
          InputBox (ss, 10, _T ("輸入邊長(2 ~ 8)"));
          _stscanf_s (ss, _T ("%d"), &i);
          if (i > 1 && i <= 8)
          {
            num_size = i;
            num_box = 3 * num_size * (num_size - 1) + 1;
          }
          else { MessageBox (hOut, _T ("輸入錯誤,不在范圍內"), _T ("來自小豆子的提醒"), MB_OK); }
          // 繪制
          draw_scene ();
          break;
        }
        // 總地雷數:num_mine
        case 3:
        {
          InputBox (ss, 10, _T ("輸入地雷數(1 ~ 總格子數)"));
          _stscanf_s (ss, _T ("%d"), &i);
          if (i > 0 && i < num_box)
          {
            num_mine = i;
          }
          else { MessageBox (hOut, _T ("輸入錯誤,不在范圍內"), _T ("來自小豆子的提醒"), MB_OK); }
          // 繪制
          draw_scene ();
          break;
        }
        // 開始
        case 6:
        {
          num_box = 3 * num_size * (num_size - 1) + 1;
          if (num_mine < num_box && num_life > 0)
          {
            exit_game = 0;
            // 初始化
            initialization ();
          }
          else
          {
            MessageBox (hOut, _T ("請將雷數修改為小于格子數或將生命值修改為大于零"), _T ("來自小豆子的提醒"), MB_OK);
          }
          break;
        }
        // 重置
        case 7:
        {
          // 結束游戲進程,進入準備階段
          if (exit_game == 0)
          {
            exit_game = 1;
            boxm[1].mod = 0;
            boxm[2].mod = 0;
            boxm[3].mod = 0;
            boxm[6].mod = 0;
            boxm[7].mod = 1;
            num_flag = 0;
            // 繪制
            draw_scene ();
          }
          break;
        }
        // 截圖
        case 8:
        {
          saveimage (_T ("image.png"));
          break;
        }
        // 退出
        case 9:
        {
          exit_game = 1;
          exit_move = 1;
          exit_carry = 1;
          break;
        }
        default:break;
        }
      }
      // 右鍵,且處于游戲進行狀態
      else if (m.message == WM_RBUTTONDOWN && exit_game == 0)
      {
        for (t = 0; t <= 888; t++)
        {
          // 成功點擊空格子
          if ((m.x - box[t].posx) * (m.x - box[t].posx) + (m.y - box[t].posy) * (m.y - box[t].posy) <= 144 && box[t].mod_life == 0)
          {
            // 標記狀態轉換
            box[t].mod_flag = (box[t].mod_flag == 0 ? 1 : 0);
            // 繪制
            draw_box (t);
            // 畫小旗子
            if (box[t].mod_flag == 1)
            {
              draw_flag (t);
              num_flag++;
            }
            else
            {
              num_flag--;
            }
            // 繪制
            draw_scene ();
          }
        }
      }
    }
  }
}


// 主進程
void Gary::carry ()
{
  // 窗口定義
  hOut = initgraph (651, 401);
  SetWindowText (hOut, _T ("六邊形掃雷:掃雷模式"));
  // 參數初始化
  num_size = 5;
  num_mine = 10;
  num_life = 3;
  // 背景繪制
  setbkcolor (WHITE);
  cleardevice ();
  // 進程控制
  exit_carry = 0;
  while (exit_carry == 0)
  {
    initialization ();
    move ();
  }
  closegraph ();
}


// 主函數
int main (void)
{
  Gary G;
  G.carry ();
  return 0;
}





大家趕緊去動手試試吧!

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 游戲
    +關注

    關注

    2

    文章

    751

    瀏覽量

    26387
  • 編程
    +關注

    關注

    88

    文章

    3639

    瀏覽量

    94031
  • 程序
    +關注

    關注

    117

    文章

    3798

    瀏覽量

    81457
  • 編譯器
    +關注

    關注

    1

    文章

    1642

    瀏覽量

    49317

原文標題:【項目實戰】C語言+easyX帶你實現:掃雷游戲(六邊形升級版)!

文章出處:【微信號:cyuyanxuexi,微信公眾號:C語言編程學習基地】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    RPP「六邊形戰士」處理器:融合NPU與GPU優勢,兼具高效與實時性的AI新星

    進入其他市場領域發展。然而,在這個競爭激烈的市場中,有一款處理器被譽為“六邊形戰士處理器”,它就是RPP,憑借其獨特的底層架構, RPP成功實現了NPU的高效率和GPU的高通用性相結合,在AI市場中游刃有余,成為了AI領域的后起之秀。 這種 結合令
    的頭像 發表于 08-31 13:38 ?1209次閱讀
    RPP「<b class='flag-5'>六邊形</b>戰士」處理器:融合NPU與GPU優勢,兼具高效與實時性的AI新星

    四芯軸壓接PK六邊形壓接:大家覺得傳統六邊形壓接和四芯軸壓接方式哪個比較好呢?

    `現在民用產品對可靠性要求越來越高,所以四芯軸壓接技術逐步被應用到民用產品。性能上來說,四芯軸抗冷熱沖擊性能遠遠好于六邊形,因為端子和導線材質不同導致熱脹冷縮比不同,自鎖能力大的壓接方式壽命遠遠
    發表于 03-27 15:05

    請問PADS logic頁面連接符圖中的六邊形是什么符號?

    圖中的六邊形是什么符號?PADS中怎么輸出對應符號?應該是頁面連接符雙向的意思 可就是不知道輸出該符號
    發表于 06-19 04:36

    淺析開關電源半六邊形法則

    開關電源半六邊形法則
    發表于 10-28 06:47

    新型有序分布正六邊形小區結構的設計

    分布式通信系統可以抑制干擾,增大容量。為了在現有的系統中引入分布式處理的增益,該文提出了有序分布的正六邊形小區通信系統。該系統可兼容現有的120o 定向天線覆蓋的蜂窩
    發表于 11-18 13:39 ?9次下載

    一種改進的六角形細分方法

    研究了六角形網格上的曲面細分算法,改進了六角形網格砍細分算法。在六邊形網格的砍細分過程中,利用對偶砍角法對非
    發表于 01-15 16:22 ?6次下載

    一種基于正六邊形網格的LEACH協議改進

    一種基于正六邊形網格的LEACH協議改進_嚴斌亨
    發表于 01-07 20:32 ?0次下載

    基于正六邊形DGS單元的微帶低通濾波器設計方案

    本文采用正六邊形缺陷地面結構單元設計了一款新穎的微帶低通濾波器, 并提出了該濾波器的原型RLC等效電路。通過對其S參數的仿真分析提取出了相應的等效電路元件值。設計了一款由五個正六邊形缺陷地面結構單元
    發表于 11-09 16:55 ?6次下載

    六邊形元胞自動機的行人疏散

    在分析、比較現有疏散仿真模型的基礎上,提出一種基于正六邊形元胞自動機的行人疏散模型。該模型中疏散空間被分成相等的正六邊形,每個行人有包括靜止在內的7個運動方向。給出速度等級的概念用來描述行人的疏散
    發表于 01-31 16:02 ?0次下載
    正<b class='flag-5'>六邊形</b>元胞自動機的行人疏散

    六邊形LED燈的制作

     由于在某些布局中設計了這種形狀,六邊形在任何時候都可以有多個輸入。..。..基本上這對于LED是不好的。我最好的解決方案是一個簡單的Attiny85電路,它讀取每個輸入并打開或關閉晶體管,基本上打開和關閉晶體管,只為下一個LED條帶留下一個信號。
    的頭像 發表于 08-23 09:27 ?6468次閱讀
    <b class='flag-5'>六邊形</b>LED燈的制作

    六邊形硅有望超過金剛石硅的新型晶體硅

    美國科學家在最新一期《物理學評論快報》雜志撰文指出,他們開發了一種新方法,合成出了一種擁有六邊形結構的新型晶型硅,這種晶型硅有可能被用于制造新一代電子和能源器件,這些新設備的性能將超過現有“普通
    的頭像 發表于 06-17 17:56 ?2150次閱讀

    堪稱六邊形戰士的aigo國民好物移動固態硬盤S7 Pro表現如何?

    堪稱六邊形戰士的aigo國民好物移動固態硬盤S7 Pro表現如何? 在很多人的印象當中,都認為硬盤是一種比較厚重的儲存設備。放在以往硬盤確實比較厚重,但是隨著科學技術的不斷發展,硬盤也隨之進行了升級
    的頭像 發表于 08-13 11:03 ?1053次閱讀
    堪稱<b class='flag-5'>六邊形</b>戰士的aigo國民好物移動固態硬盤S7 Pro表現如何?

    開關電源半六邊形法則

    開關電源半六邊形法則
    發表于 10-21 19:35 ?10次下載
    開關電源半<b class='flag-5'>六邊形</b>法則

    壓線鉗四邊形六邊形的特征、性質以及應用

    在幾何學中,四邊形六邊形是兩個常見的多邊形狀。它們在不同的方面具有不同的特點和用途。本文將比較壓線鉗四邊形六邊形的特征、性質以及應用,
    的頭像 發表于 12-28 17:05 ?6742次閱讀

    六邊形壓接 VS B型壓接

    在柔性電纜的線束制造過程中,選擇適當的壓接方法至關重要,因為它直接關系到連接的可靠性和性能。六邊形壓接和B型壓接是兩種常用的壓接技術,但它們各有特點,適用于不同的應用需求。在壓接連接和剛性電纜情況下
    的頭像 發表于 05-16 08:26 ?1041次閱讀
    <b class='flag-5'>六邊形</b>壓接 VS B型壓接
    主站蜘蛛池模板: 黄频网站免费大全在线观看 | 免费毛片大全 | 天天操天天操天天操 | 欧美日韩你懂的 | 91在线视频免费 | 成人三级在线播放线观看 | 女人色视频| 天堂在线最新版在线www | 久操视频在线免费观看 | 婷婷色人阁 | 韩国黄色三级视频 | 亚洲国产精品婷婷久久 | xxxx69日本hd | 深夜国产成人福利在线观看女同 | 亚洲综合激情 | 天天爽夜夜爽精品视频一 | 1024久久| 77788色淫网站免费观看 | h视频免费高清在线观看 | 性欧美1819hd| 天堂影| 欧美在线一区二区三区 | 日韩欧美国产电影 | 亚洲高清国产拍精品影院 | 夜夜春宵翁熄性放纵30 | 国产精品你懂得 | mmmxxx69日本 | 久久成人精品免费播放 | 天天干天天干天天干天天 | 国产精品视频色拍拍 | 天天草天天草 | 黄视频在线播放 | 淫五月 | 亚洲一区二区三区四 | 香蕉视频国产在线观看 | 日本黄色片在线观看 | 午夜视频在线观看网站 | 关晓彤被调教出奶水的视频 | 手机在线观看毛片 | 亚洲黄色天堂 | 网www天堂资源在线 网红和老师啪啪对白清晰 网络色综合久久 |