01/10/2018, 12:04

Bài tách chữ số không chạy được khi nhập số bất kì

Em mới bắt đầu học nên chưa hiểu lắm mn giúp ạ
Nhập vào số nguyên n
và tách từng số trong đó ra
ví dụ 123456->>1 2 3 4 5 6
12345->> 1 2 3 4 5
không bị giới hạn bởi n ạ
Em đã làm bài nhập n là số có 5 chữ số và chạy được nhưng khi thử sang nhập n là 1 số bất kì thì e sửa kiểu gì cũng k chạy đc ạ

Trần Hoàn viết 14:08 ngày 01/10/2018
while (n > 0)
	n /= 10;
HK boy viết 14:14 ngày 01/10/2018

Bạn tự suy nghĩ xem. Từ code của anh @noz1995, bạn chạy thử rồi tự nhận ra quy luật. Không xin code diễn đàn.

Tv Z Full Hd viết 14:07 ngày 01/10/2018

#include
#include <stdio.h>
#include <conio.h>
#include <math.h>
using namespace std ;

int main(){

int a[5];
int i;
	int n;
        
while(true){
cout<<endl<<"nhap n :";
        cin >> n;
        if(n>9999 && n<100000){	
		while(n>0)	{
          for(i=0;i<5;i++){
            a[i]=n%10;
            n=n/10;}
          for(int j=4;j>=0;j--){
            cout<< a[j] << "   ";	
            }}

}else{
cout<< “nhap lai :” ;}}}

Đây là code chạy khi n có 5 chữ số
còn khi n bất kì thì nó bị lặp và in ra cả địa chỉ của mảng
mn giúp mình

HK boy viết 14:10 ngày 01/10/2018

if(n>9999 && n<100000){

  • Bạn tự giới hạn code chỉ chạy khoảng 5 chữ số.
  • Thay for bằng while như demo của anh noz1995, vì số chữ số chưa xác định.
Tv Z Full Hd viết 14:09 ngày 01/10/2018

cảm ơn bạn ạ!!! …

Bài liên quan
0