Từ 1 tới 2 trên tổng số 2 kết quả

Đề tài: [ Solved ]Chuyển từ hệ 10 sang hệ 16

  1. #1
    Ngày gia nhập
    03 2008
    Bài viết
    4

    Mặc định [ Solved ]Chuyển từ hệ 10 sang hệ 16

    không biết mình có viết sai(thiếu) chỗ nào không,khi mình nhập vào số 15 ở hệ 10 thì đoạn code ở dưới không xuất ra chữ f ở hệ 16 mà là số 15
    Code:
    #include<iostream.h>
    #include<ctype.h>
    #include<stdio.h>
    #include<conio.h>
    #define maxs 50
    typedef int elems;
    #include<stdlib.h>
    #include"stack.cpp"
    
    void main()
    {
    	
    	char digit[6]={'a','b','c','d','e','f'};
    	int i,n,k;
    	stack s;
    	do
    	{
    	cout<<" nhap vao so n : ";
    	cin>>n;
    		cout<<" nhap vao he ban muon chuyen : ";
    	cin>>k;
    	createstack (s);
    	while(n)
    	{
    		i=n%k;
    		push(s,i);
    		n=n/k;
    		
    	}
    	cout<<" ket qua = ";
    	while(!emptystack(s))
    	{
    		pop(s,i);
    		if(i>=10)
    			cout<<digit[i%10];
    		else
    		cout<<i;	
    	}
    	cout<<"\n ban co muon tiep tuc nua khong(c/k)"<<"\n";
    	}
    	while(toupper(getch())!='c');
    }

  2. #2
    Ngày gia nhập
    09 2007
    Bài viết
    724

    Không biết bạn làm theo thuật toán hay là ứng dụng.

    Bạn tham khảo thêm hàm itoa nhé.
    đây là code demo của mình.

    C++ Code:
    1.  
    2. #include <iostream>
    3.  
    4. using namespace std;
    5. int main()
    6. {
    7.     char *s;
    8.     s = new char;
    9.    
    10.     itoa(15,s,16);
    11.     cout<<s;
    12.  
    13.     s = NULL;
    14.     delete []s;
    15.  
    16.     return 0;
    17. }


    còn đây là thuật toán của bạn mình đã sửa lại rồi .
    Bạn không đưa code của hàm stack của bạn lên nên mình dùng stack của STL.


    C++ Code:
    1.  
    2. #include <iostream>
    3. #include <stack> // khai báo thư viện để dùng stack
    4.  
    5. using namespace std;
    6.  
    7. int main()
    8. {
    9.  
    10.     char digit[6]={'a','b','c','d','e','f'};
    11.     int i,n,k;
    12.     char key;
    13.     do
    14.     {
    15.         cout<<" nhap vao so n : ";
    16.         cin>>n;
    17.             cout<<" nhap vao he ban muon chuyen : ";
    18.         cin>>k;
    19.         stack<int> s; // khai báo một stack với tên là s và kiểu của phần tử là int.
    20.         while(n)
    21.         {
    22.             i=n%k;
    23.             s.push(i); // thêm i vào stack
    24.             n=n/k;
    25.         }
    26.         cout<<" ket qua = ";
    27.         while(!s.empty())
    28.         {
    29.             i = s.top(); // lấy phần tử đầu  trong stack
    30.             if(i>=10)
    31.                 cout<<digit[i%10];
    32.             else
    33.                 cout<<i;
    34.            
    35.             s.pop(); // đẩy phần tử ra khỏi stack.
    36.         }
    37.         cout<<"\n ban co muon tiep tuc nua khong(c/k)"<<"\n";
    38.         cin>>key;
    39.     }
    40.     while(key =='C' || key == 'c');
    41.  
    42.     return 0;
    43. }
    Đã được chỉnh sửa lần cuối bởi zkday2686 : 16-10-2008 lúc 03:38 AM.

Các đề tài tương tự

  1. ADO.NET Chuyể Phần mềm QLNS sang Ngôn ngữ Dynamic Programming. Ai chuyển giúp mình!?
    Gửi bởi huynhanhton trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 03-04-2011, 11:41 PM
  2. Chuyển một số sang chuỗi | Chuyển 1 số sang xâu ?
    Gửi bởi xuanhung_cntt trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 6
    Bài viết cuối: 03-05-2009, 11:48 PM
  3. [ Solved ]Giúp em về đổi sang nhị phân
    Gửi bởi nqhoang86dn trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 10
    Bài viết cuối: 17-09-2008, 01:11 PM
  4. [ Solved ]Chuyển 1 số sang 1 cơ số bất kì !
    Gửi bởi haminhtue trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 7
    Bài viết cuối: 01-04-2008, 12:31 AM
  5. [ Solved ]Dịch trên Turbo C++ ko sao, sang VC++ thì *_*
    Gửi bởi phamsimanh trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 5
    Bài viết cuối: 14-04-2007, 06:17 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn