Cần trợ giúp bài tập về mã MORSE

chào mn, thầy ra cho em bài tập, chuyển 1 file.txt văn bản sang mã morse, xuất ra fileout.txt đã được mã hóa, e đã thử rất nhiều cách rồi mà vẫn lỗi tùm lum. ai đã làm bt này hoặc biết cách làm chỉ giúp e với, e cảm ơn

1 Like

Các cách của bạn là cách nào? Cho xem mã của từng cách!

1 Like
#include <fstream>
#include <iostream>

using namespace std;

int main()
{ 
  string input[100];
  char kt;
  int i=0,dem;
   fstream filevao;
  filevao.open("1.txt", ios::in);
  if (filevao == 0)
  {
    cout << "Cannot read file!";
    return 0;
  }
    while (!filevao.eof())
    {
      filevao.get(kt);
      input[i] = kt;
      i++;
      dem=i;
    }
  
 for(i=0;i<dem-1;i++)
 {
 	cout<<input[i];
 }
  filevao.close();
  cout<<endl;
  string vao[63]={
  "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",
  
  "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",
  
  "1","2","3","4","5","6","7","8","9","0",
  
  " "
  };
  string ra[63]={
  ".-", "-...", "-.-.", "-..",".", "..-.", "--.", "....", "..", ".---",
  "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-",
  "..-", "...-", ".--", "-..-", "-.--", "--..",
  
    ".-", "-...", "-.-.", "-..",".", "..-.", "--.", "....", "..", ".---",
  "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-",
  "..-", "...-", ".--", "-..-", "-.--", "--..",
  
   ".----", "..---", "...--","....-", ".....", "-....", "--...", "---..", "----.", "-----",
   
   "/"
  };
                    
    for(int i=0;i<dem-1;i++)
	{
		for(int j=0;j<63;j++)
		{
			if(input[i]==vao[j])
			{
				input[i]=ra[j];
			}
		}
    }   
 for(i=0;i<dem-1;i++)
 {
 	cout<<" "<<input[i];
 }           
 fstream filera;
 filera.open("2.txt",ios::out);
   if (filera == 0)
  {
    cout << "Cannot found file!";
    return 0;
  }  
  for(int i=0;i<dem-1;i++)
  {
  	filera<<input[i];
  }
  filera.close();

e đã làm được chữ sang morse, còn morse sang chữ chưa làm được

Làm cây Morse thôi.

4 Likes

Bạn không phân cách cho các mã morse à?
Bạn ghi thế thì cho mình hỏi: -...- sẽ là:

  • TEEET?
  • NEET?
  • BT?
  • NEA?
  • TST?
  • TV?
  • TIA?
  • …?
  • Hay là =?
2 Likes

Thường là sẽ có 1 khoảng nghĩ giữa các ký tự (như dấu cách). Còn dính chùm thì nhờ thầy giải dùm luôn :joy:

3 Likes
for(int i=0;i<dem-1;i++)
{
	filera<<input[i];
}

em thêm <<" "<< ở giữa rồi, chạy cũng ok rồi anh, còn chuyển mã morse thành chữ nữa thui hix

Hm, chiều ngược lại làm y hệt như chiều xuôi thôi cậu, chỉ đổi 2 bảng ra và vào cho nhau là được.
Tớ nghĩ khi cậu đã làm được 1 chiều tốt như vậy rồi, không có lý do gì cậu cần trợ giúp từ bọn tớ cho chiều ngược lại cả :slight_smile:

5 Likes

A post was merged into an existing topic: Topic lưu trữ các post off-topic - version 3

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