Vòng lặp while trong ngôn ngữ C/C++

(Hơi lạc đề) Nếu bạn học lập trình thì cái này mới là ải đầu tiên thôi.

1 Like

bạn tham khảo thử nhé:
bài 1:

int number;
int total = 0;

cout << "Enter the number.";

cin >> number;

while (number > 0) {
	cout << "The number: " << number << endl;
	total += number;
	cout << "Enter the new number: "; cin >> number;
}
cout << "Congratulation, Total: " << total << endl;

bài 3:

int number = 1;

while ( number < 6) {
	int count = 1;
	while (count <= number) {
		cout << count << " ";
		count++;
	}
	cout << endl;
	number++;
}

a cho e hỏi…bài 1 a cho i>0…có cách nào để mình nhập giá trị <0 mà CT vẫn thực hiện k a

#include <iostream>
using namespace std;
int main()
{
	int i;
	int tong = 0;
	cout << "Tinh tong cac so nguyen nhap tu ban phim, khi nhap 0 chuong trinh se dung lai" << endl;
	cout << "Nhap gia tri: ";
        cin >> i;
	while (i!=0)
	{
		tong = tong + i;
		cout << "Nhap gia tri tiep theo: "; cin >> i;
	}
	cout << "Ban da nhap 0, chuong trinh dung lai ket qua Tong la: " << tong << endl;
	system("pause");
	return 0;
}
#include<iostream>
#include<windows.h>
using namespace std;

int main()
{
	int a = 1,b=1,c=1,d=1,e=1;
	cout<<a<<endl;
	while(b<=2)
	{cout<<b;b++;}
	cout<<endl;
	while(c<=3)
	{cout<<c;c++;}
	cout<<endl;
	while(d<=4)
	{cout<<d;d++;}
	cout<<endl;
	while(e<=5)
	{cout<<e;e++;}
	cout<<endl;
	
	system("pause");
	return 0;
}
//thế này cho gọn

bài 2 e chưa hiểu lắm a giải thích dùm em được k ?

Exercise 1:
http://codepad.org/AO84rutA

Exercise 2:
http://codepad.org/TRaL5Fdl

Exercise 3: (bai nay em da xem tham khao truoc khi lam :frowning: )
http://codepad.org/siYYc9Yc

bài 2 đơn giản lắm bạn. Từ 0 đến 127 là sô nguyên nhưng nếu bạn đổi no sang biến char thì nó sẽ chuyển con số đó thành các kí tự (các chữ cái đều là số nguyên hết) cho nên đầu tiên bạn tạo biến char = 0. sau đó bạn cho vào vòng lặp while với điếu kiện nhỏ hơn 127. rồi thêm 1 dòng char ++ lúc này khi char = 0 <= 127 thì nó thỏa nên sẽ chạy tiếp ++, 1 <= 127 thì lúc này nó thỏa nên chạy tiếp tới khi đủ 127 thôi bạn

đáp án đơn giản của bài 3 :

Nên dùng for, code sẽ sáng hơn.
Cách của mình thì bài này 1 vòng for cũng được:

#include <iostream>

using namespace std;

int main()
{
  string s;
  for (int i = 1; i <= 5; ++i)
  {
    s += to_string(i);
    s += " ";
    cout << s << endl;
  }
  return 0;
}
1 Like

#Ex 3

#include <iostream>
using namespace std;

int main() {

	int i, j, k;
	
	i = 1; j = 1;
	while (i <= 5) {
		k = i;
		while (j <= k) {
			cout << j << " ";
			++j;
		}
		cout << endl;
		j = 1;
		++i;
	}

	system("pause");
	return 0;
}

Code em viết vậy ổn không ạ.

bạn bạn giải thích dùm mình cái đề bài 1 và phần biến i là gì với được không. tự học nên rối quá

#include <iostream>


using namespace std;
int main()
{
	int a = 1, i = 1;
	while (i <= 5)
	{
		
		a = 1;
		while (a <= i)
		{
			cout << a << " ";
			a++;
			
		}
		i++;
		cout << endl;
	}


	system("pause");
	return 0;

}

Bài 3 mình làm cách này có ổn không ạ?

Bài Tập 1:

#include "stdafx.h"
#include <iostream>

int main()
{
	int a{ 0 };
	int tong{ 0 };

	while (true)
	{
		std::cout << "Nhap so cho a: ";
		std::cin >> a;

		if (a != 0)
		{
			std::cout << "Tong = " << (tong += a) << std::endl;
		}
		else
		{
			break;
		}
	}

	std::cout << "\nTong = " << tong << std::endl;

	std::cout << "\nXin Cam On !" << std::endl;

    return 0;
}

Bài Tập 2:

#include "stdafx.h"
#include <iostream>


int main()
{
	int a{ 0 };
	int character{ 127 };

	while (a <= character)
	{
		std::cout << static_cast<char>(a) << std::endl;
		a++;
	}

    return 0;
}

Bài Tập 3:

#include "stdafx.h"
#include <iostream>

int main()
{
	int a{ 0 };

	while (a <= 5)
	{
		int b{ 0 };
		
		while (b <= a)
		{
			std::cout << b << " ";
			b++;
		}

		std::cout << std::endl;
		a++;
	}

    return 0;
}

Xin cảm Ơn ! Có chỗ nào sai xin mọi người chiếu cố với ! :grin:

1 Like
#include |iostream|

using namespace std;

int main() {
	int a = 1; int b = 1;
	while (a <= 5) {
		while (b <= a) {
			cout << b << " ";
			b++;
		}
		cout << "\n";
		b = 1;a++;
	}
	system("pause");
	return 0;
}
int main()
{
	int n{ 1 };
	while (n <= 127)
	{
		cout << static_cast<char>(n) << " ";
		n++;
	}

	system("pause");
	return 0;
}

day la bai 2 cua e
thuc ra thi e van chua hieu vong lap cho lam

1 Like

Bai 2

#include<iostream>
using namespace std;
int main(){
    int i;
    for(i=0;i<128;i++){
        cout<<i<<endl;
    }

}

Bai 3

#include<iostream>
using namespace std;
int main(){
    int a;
    for(a=1;a<2;a++){
        cout<<a<<" ";
    
    }
     cout<<endl;
    int b;
    for(b=1;b<3;b++){
        cout<<b<<" ";
       
    }
     cout<<endl;
    int c;
    for(c=1;c<4;c++){
        cout<<c<<" ";
    }
     cout<<endl;
        int d;
    for(d=1;d<5;d++){
        cout<<d<<" ";}
        cout<<endl;
        int e;
    for(e=1;e<6;e++){
        cout<<e<<" ";}
        cout<<endl;
    }
Bai 1
#include <iostream>
    using namespace std;

    int main(){
        int so, tong;
        cout<<"nhap so vao"<<endl;
        cin>>so;
        while(so>0){
            tong=tong+so;
            cout<<"nhap so vao"<<endl;
        cin>>so;
        
        }
        cout<<"Tong tat ca la="<<tong<<endl;
    }

A post was split to a new topic: Dùng vòng lặp while để chương trình không nhận số 0 và số âm

Biết là lâu rồi nhưng cho e đào mộ lại phát ạ! :joy: :joy: :joy:
Nếu biến m không để m++ thì ở vòng while ngoài, mỗi vòng nó sẽ nhảy lung tung hay tăng tuần tự vậy ạ?

Nó sẽ đứng yên nhé :smiley:

4 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?