情報科学演習
2011.06.27

Back to index page



  1. 本日の作業内容

  2. 宿題の結果について

    以下に示すようにインデントのおかしいものが見られます.注意してください.

    main()
    {
            int i = -5, j, p;
    
            printf("My student number: s104025\n\n");
    
            while(i<=5){
                                    p = -i * i;
                                    j = 0;
                                    while(j<=p+30){
                                                    printf("*");
                                                    j++;
                                    }
                                    printf("\n");
                                    i++;
            }
            printf("\n-----------------------------------------------\n");
    
    
    
            return(0);
    }
    
    

    main()
    {
    
                            int a,x,y;
    
                            y = -5;
    
                            printf("My student number: s104034\n\n");
    
                            while(y <= 5){
                                                    a = 0;
                                                    x = -y*  y + 30;
                                                    y++;
    
                                    while(a <= x){
                                                    printf("*");
                                                    a++;
    
                                    }
                                    printf("\n");
    
                            }
                            printf("\n");
                            printf("---------------------------------\n");
    
    
                    return(0);
    
    }
    
    

    main()
    {
                    int i,x,y;
                    y = -5;
            printf("My student number : s104037\n\n");
            while(y <= 5){
                            i = 0;
                            x = -y* y + 30;
                            y++;
                                    while(i <= x){
                                            printf("*");
                                            i++;
                                    }
                                    printf("\n");
                            }
                            printf("\n");
                    printf("-------------------------------------\n");
            return(0);
    }
    
    

    main()
    {
            printf("My student number: s104046\n\n");
            int x=-6, y=0;
    
    
            while(x<=5){
                    x++;
                    while(y<=31){
                            if(31-x*x<=y)
                                    printf(" ");
                            else
                                    printf("*");
                            y++;
                    }
                    y=0;
                    printf("\n");
            }
    
                    printf("\n-----------------------------------------------\n");
            return(0);
    }
    
    

    main()
    {
            int i, j;
    
            printf("My student number: s104099\n\n");
    
            i=-5;
            while(i<=5){
                    j=0;
                    while(j<=-i*i+30){
                            printf("*");
                            j++;
            }
            i++;
            printf("\n");
            }
            printf("\n----------------------------------------------\n");
            return(0);
    }
    

  3. 前回の復習

    1. while 文の基本

      ただ単に10回動作を繰り返すような処理の場合,以下のような書式で実現できま す.

          i = 1;
          while(i<=10){
              printf("%d ", i);
      
              i++;
          }
      

      変数 i の初期化も,増分も自分で別途記述する必要があります.

    2. 反復回数が決まっていない場合の while

      前回の実習課題の ii のように繰り返す回数が決まっていないときに は,while 文の方が for 文よりも簡単になる場合がありま す.

          n = 100;
          while(n>=0){
              m = rand() % 11 + 20;
      
      	printf("%d - %d = ", n, m);
      
              n -= m;
              printf("%d\n", n);
          }
      

  4. 1次元配列

    この授業の最後の難関である配列です.これが使えないと実際のプログラミング では困ります.複数の並んだ値を一つの名前で保存できる便利な機能ですので, 必ず使えるようになってください.

    ポイントは値が何番目に入っているかを示す「添字」の使い方です.この添字を for 文などと組み合わせて自動的に処理する方法を理解しましょ う.

  5. 実習