#3239: 有關正列程式的問題


massgekevin (瘋狂屎蛋尼)



目前顯示:星星會由上而下再由下而上跑

問題:如何把他拆成由上而下為第一行
         由下而上為第二行
         而且能同時出發
         意思是能交會而過?

 

目前

 

#include <iostream>
#include <ctime>
#define size 15
using namespace std;

void Show(char diagram[],int s);
void upData(char diagram[],int s,int p);

int main()
{
char point[size];         //程式都是由第一列一直計算下去  所以有順序 
  {
int i,j;

  for(j=0;j<size;j++) //由上而下        
    upData(point,size,j);             
    Show(point,size);                
   
    system("cls");  //消除螢幕           
  }
 
 
  for(j=size;j>0,j--;)  //由下而上     如何把這程式碼printf為第2行 ?
  {
    upData(point,size,j);           // 而且要如何與第一行同時出發 ?
    Show(point,size);              
  
    system("cls");  //消除螢幕  
  }
system("pause");
return 0;   
}

void Show(char diagram[],int s)
{
int i;
 
  for(i=0;i<s;i++)
  {
  cout<<diagram[i]<<endl;
  }
}

void upData(char diagram[],int s,int p)
{
int i;

  for(i=0;i<s;i++)
   {
    diagram[i]= ' ';
    diagram[p]= '*';
   }
}

 

 

#3244: Re:有關正列程式的問題


massgekevin (瘋狂屎蛋尼)


忘了說這是用 Dev C++ 的程式!
#3246: Re:有關正列程式的問題


example (學姊)


忘了說這是用 Dev C++ 的程式!


 整個題目內容是?

#3247: Re:有關正列程式的問題


massgekevin (瘋狂屎蛋尼)


忘了說這是用 Dev C++ 的程式!


 整個題目內容是?

題目內容是:製作兩個相交會的動畫星星

                

#3248: Re:有關正列程式的問題


massgekevin (瘋狂屎蛋尼)


忘了說這是用 Dev C++ 的程式!


 整個題目內容是?

題目內容是:製作兩個相交會的動畫星星

                

#3249: Re:有關正列程式的問題


massgekevin (瘋狂屎蛋尼)


忘了說這是用 Dev C++ 的程式!


 整個題目內容是?

題目內容是:製作兩個相交會的動畫星星

                

 

類似這樣 1個在左上 1個在右下

1.     *  

 

            *

2.    

      *

          *

3.

      * *   (相會)

4.

        *

    *

 

5.     *

 

    *

 

這樣應該有比較清楚一點了

 

#3251: Re:有關正列程式的問題


example (學姊)


忘了說這是用 Dev C++ 的程式!


 整個題目內容是?

題目內容是:製作兩個相交會的動畫星星

 是指這個嗎?

#include <stdio.h>
#include <stdlib.h>

int main() {
    int i, j, k, n, hight;
   
    hight = 10;
   
    for( i = 0, j = hight-i ; i < hight ; i++, j-- ) {
        for( k = 0 ; k < hight ; k++ ) {
            putchar(k==i?'*':' ');
            putchar(k==j?'*':' ');
            putchar('\n');
        }
        system("cls");
    //    printf("%d %d\n", i, j );
    }

    system("pause");
    return 0;
}

 我花了好久時間看懂題目XD

#3252: Re:有關正列程式的問題


example (學姊)


忘了說這是用 Dev C++ 的程式!


 整個題目內容是?

題目內容是:製作兩個相交會的動畫星星

 是指這個嗎?

#include <stdio.h>
#include <stdlib.h>

int main() {
    int i, j, k, height;
   
    height = 10;
   
    for( i = 0, j = height-i ; i < height ; i++, j-- ) {
        for( k = 0 ; k <= height ; k++ ) {
            putchar(k==i?'*':' ');
            putchar(k==j?'*':' ');
            putchar('\n');
        }
        system("cls");
    //    printf("%d %d\n", i, j );
    }

    system("pause");
    return 0;
}

 我花了好久時間看懂題目XD

 我不小心把 height 拼成 hight 了

 哈哈哈

#3253: Re:有關正列程式的問題


massgekevin (瘋狂屎蛋尼)


 是指這個嗎?

#include
#include

int main() {
    int i, j, k, height;
   
    height = 10;
   
    for( i = 0, j = height-i ; i < height ; i++, j-- ) {
        for( k = 0 ; k <= height ; k++ ) {
            putchar(k==i?'*':' ');
            putchar(k==j?'*':' ');
            putchar('\n');
        }
        system("cls");
    //    printf("%d %d\n", i, j );
    }

    system("pause");
    return 0;
}

 我花了好久時間看懂題目XD

 我不小心把 height 拼成 hight 了

 哈哈哈

 抱歉沒解釋清楚!

 哈哈!小錯而已

putchar在C是代表....?

 for( i = 0, j = height-i ; i < height ; i++, j-- )

第一次看到可以這樣寫 哈哈 有收穫

putchar(k==i?'*':' ');
putchar(k==j?'*':' ');

原來是一次寫兩格'*':' '

就可以排到第2行....忘了 = =

恩 是這樣的結果沒錯!謝謝




 

#3254: Re:有關正列程式的問題


example (學姊)


 是指這個嗎?

#include
#include

int main() {
    int i, j, k, height;
   
    height = 10;
   
    for( i = 0, j = height-i ; i < height ; i++, j-- ) {
        for( k = 0 ; k <= height ; k++ ) {
            putchar(k==i?'*':' ');
            putchar(k==j?'*':' ');
            putchar('\n');
        }
        system("cls");
    //    printf("%d %d\n", i, j );
    }

    system("pause");
    return 0;
}

 我花了好久時間看懂題目XD

 我不小心把 height 拼成 hight 了

 哈哈哈

 抱歉沒解釋清楚!

  哈哈!小錯而已

putchar在C是代表....?

 for( i = 0, j = height-i ; i < height ; i++, j-- )

第一次看到可以這樣寫 哈哈 有收穫

putchar(k==i?'*':' ');
putchar(k==j?'*':' ');

原來是一次寫兩格'*':' '

就可以排到第2行....忘了 = =

恩 是這樣的結果沒錯!謝謝

 putchar() 是 只輸出一個字元的函數

 putchar(k==i?'*':' ');

 中間的 k==i ? '*' : ' ' 是三元運算子

 等於

 if( k == i )

     putchar('*');

 else

     putchar(' ');

 寫兩次就是一行輸出兩個字元囉

#3255: Re:有關正列程式的問題


massgekevin (瘋狂屎蛋尼)


 

恩  i got it!

謝謝~學姊