Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Bài toán về vị trí từ trong từ điển.

8 năm trước 1.026 lượt xem 3 bình luận

Hí hí, chào mọi người.

Em có 1 bài toán mà e vẫn chưa tìm được cách giải quyết, mong m.n giúp ạ.

Đề bài: Cho biết vị trí của 1 từ , sau đó hiển thị ra từ đó , vị trí được sắp xếp theo A-Z giống trong từ điển.
VD: 1 là A, 2 là B, 26 là Z, 27 là AA, 28 là AB, 29 là AC, giống thứ tự cột trong excel ý.
Em làm rồi mà lạ ở chỗ nó chỉ chạy đúng từ 1-> 701, nghĩa là 2 chữ cái, từ 3 chữ cái trở lên là bắt đầu sai.....

Thuật toán của em:

 

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
K9 SuperAdmin, KquizAdmin, KquizAuthor đã bình luận 8 năm trước

hoặc

#include <bits/stdc++.h>
	using namespace std;
	int main()
	{
		char st[50];
		cout<<"Enter a string : ";
		fflush(stdin);
		cin>>st;
		int n = strlen(st);
		long long sum=0;
		for (int i=n; i>0; i--)
		{
			sum += pow(26,i-1) * ((int)(st[n-i] - 64));
		}
		cout<<sum;
	}

 

K9 SuperAdmin, KquizAdmin, KquizAuthor đã bình luận 8 năm trước
 #include <iostream>
#include <conio.h>
using namespace std;
int main()
{
char ch[26]={'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
char chu[100]={' '};
unsigned int k;
int i=0;
cout<<"k = "; cin>>k;
if (k==26) cout<<'Z';
else
{
while (k != 0)
{
int temp=k%26;
chu[i]=ch[temp-1];
i++;
k=k/26;
}
for (int j=i-1; j>=0; j--) cout<<chu[j];
}
getch();
}

 

K9 SuperAdmin, KquizAdmin, KquizAuthor đã bình luận 8 năm trước

vẫn k hiểu cụ thể bài toán này là gì nhỉ. thấy có vẻ đề và cach làm ngược nhau @@

Câu hỏi mới nhất