Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 5 của 5
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    November.Rain cũng học ptit à, hình như gặp người quen. [IMG]images/smilies/2.gif[/IMG]
    Bài của c cho i++ vs i-- trên đầu vòng while mình chạy thử nó lặp vô tận và không ra kêt quả. Để như cũ mới ra.
    C chạy thử 2 bài của mình. Vấn đề là khi dùng tất vòng while. K hiểu sao khi tìm tới các phần tử của mảng A[] để hiển thị ra lại không thấy.

    <a href="http://upanh.com/view/?id=arr22nemdbs" target="_blank" rel="nofollow"></a>

    Pro nào giúp mình vs [IMG]images/smilies/wings_no.gif[/IMG]

  2. #2
    Mã nguồn PHP:
    #include<stdio.h> #include<conio.h> int A[9]={0,1,2,3,4,0,0,0,0},B[11],n=4,Stop=0,count=0; void Function1(){ printf("
    Ket qua buoc %2d:"
    ,++count); int i = 1; while(i<=n) { if(B[i]) printf("%3d",A[n+i]); else printf("%3d",A[i]); i++; } printf("
    "
    ); } void Function2(){ int i = n; while(B[i]) { B[i] = 0; i--; } if(i==0) Stop = 1; else B[i]=1; } int main() { while(!Stop) { Function1(); Function2(); } getch(); return 0; }  

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Yêu cầu bài này của mình là phải chuyển hêt về vòng lặp while()
    Mã:
    #include <stdio.h>
    #include <conio.h>
    
    
    int A[]={0,1,2,3,4,0,0,0,0},n=4,stop=0,count=0,B[11];
    void function1(){
    	printf("
     Ket qua buoc %2d : ",++count);
    	int i=1;
    	while(i<=n)
    	{
    	int ok=0;	
    	while(B[i]){
    	printf("%3d",A[n+i]);
    	ok=1;
    	break;
    	}
    	while(!ok){
    		printf("%3d",A[i]);
    		break;
    	}
    	i++;
    	}
    
    }
    void function2(){
    	int i=n;
    	
    	while(B[i]){
    	    
    		B[i]=0;
    		i--;
    	}
    	int ok=0;
    	while(i==0){
    	stop=1;ok=1;break;
    	}
    	while(!ok){
    		B[i]=1;
    		break;
    	}
    }
    main(){
    while(!stop){
    function1();function2();
    }
    getch();
    }
    Mình sửa và chay ngon rồi.
    Tiện đây nói luôn thuật toán chuyển từ câu lệnh if - else sang while mọi người có thể tham khảo thêm[IMG]images/smilies/wink.png[/IMG]:
    if(<điều kiện>) <câu lênh 1>
    else <câu lênh 2>
    >>>>>
    chuyển sang vòng lặp while:

    //dùng biến tạm ok=0
    int ok=0;
    while(<điều kiện>)
    {
    <câu lệnh 1 >; ok=1;break;
    }
    while(!ok){
    <câu lệnh 2>; break;
    }

  4. #4
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Mình nghĩ nó là thế này , bạn xem thử xem .Dạo này dân ptit vào đây nhiều nhỉ

    Mã:
    void Function1(){     printf("
     Ket qua buoc %2d:",++count);     int i=1;     while(i<=n){        i++;        if(B[i])  printf("%3d",A[n+i]);        else printf("%3d",A[i]);        printf("
    ");     }} void Function2(){    int i;    i=n;    while(B[i]){        i--;        B[i]=0;    }    if(i==0) Stop=1;    else B[i]=1;}

  5. #5

    Lỗi chuyển đổi các cấu trúc điều khiển về vòng lặp while

    Mã:
    #include<stdio.h>
    #include<conio.h>
    int A[9]={0,1,2,3,4,0,0,0,0},B[11],n=4,Stop=0,count=0;
    void Function1(){
         printf("
     Ket qua buoc %2d:",++count);
         for(int i=1;i<=n;i++)
            if(B[i]) printf("%3d",A[n+i]);
            else printf("%3d",A[i]);
         printf("
    ");
    }
    void Function2(){
         int i;
         for(i=n;B[i];i--)B[i]=0;
         if(i==0) Stop=1;
         else B[i]=1;
    }
    main(){
         for(;!Stop;){
            Function1();Function2();
         }
         getch();
    }
    Yêu cầu viết lại chương trình trên thành dạng tương đương chỉ dùng cấu trúc lặp while và đảm bảo chương trình vẫn chạy đúng trong mọi trường hợp.

    Mình đã chuyển hết về while nhưng k ra được kết quả giống code trên. Pro nào giúp mình vs[IMG]images/smilies/kiss.gif[/IMG]
    Mã:
    #include <stdio.h>
    #include <conio.h>
    
    
    int A[]={0,1,2,3,4,0,0,0,0},n=4,stop=0,count=0,B[11];
    void function1(){
    	printf("
     Ket qua buoc %2d : ",++count);
    	int i=1,ok=0;
    	while(i<=n)
    	{
    	while(B[i]){
    	printf("%3d",A[n+i]);
    	ok=1;break;
    	}
    	while(!ok){
    		printf("%3d",A[i]);break;
    	}
    	i++;
    	}
    
    }
    void function2(){
    	int i=n;
    	
    	while(B[i]){
    		B[i]=0;i--;
    	}
    	int ok=0;
    	while(i==0){
    	stop=1;ok=1;break;
    	}
    	while(!ok){
    		B[i]=1;
    		break;
    	}
    }
    main(){
    
    while(!stop){
    function1();function2();
    
    }
    getch();
    }

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •