Header Ads

Bài Tập Java Số 7: Đảo Thứ Tự Từ Trong Chuỗi

Đề bài

Input: Nhập một chuỗi s bất kỳ.
Output: Xuất ra một chuỗi có thứ tự từ ngược đảo với chuỗi s đã nhập trong khi vẫn giữ nguyên khoảng cách giữa các từ này.
Ví dụ: nhập "Nguyen Van Nam" xuất ra "Nam Van Nguyen"

Giải Thuật:

Ta sử dụng chuỗi s1 làm trung gian, chuỗi s2 sẽ là chuỗi nghịch đảo của chuỗi đã cho.  Sau đó sử dụng 1 vòng lặp chạy từ chỉ mục cao nhất cho đến chỉ mục thấp nhất của chuỗi s, rồi dùng điều kiện if để xét các ký tự trong chuỗi s có phải là khoảng trắng hay không để gán s1 và s2 những giá trị thích hợp.

Code mẫu:

package baitap7;

import java.util.Scanner;

public class baitap7 {

 public static void main(String[] args) {
  String s = new String ();
  Scanner nhap = new Scanner (System.in);
  System.out.println("Nhap chuoi: ");
  s = nhap.nextLine();
  String s1 = "";
  String s2 = "";
  for (int i = s.length()-1; i >= 0;i--)
  {
   if (s.charAt(i)!=' ')
   {
    s1 = s.charAt(i) + s1;
   }
   else
   {
    s2 += s1 + ' ';
    s1 = "";
   }
   if(i == 0)
    s2 +=s1;
  }
  System.out.println(s2);
 }
}

Không có nhận xét nào

Được tạo bởi Blogger.