K
Khách

Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.

30 tháng 6 2023

program superSymmetricalSubstring;

var

      s: string;

function isSymmetrical(str: string): boolean;

var

      i, len: integer;

begin

      len := length(str);

      for i := 1 to len div 2 do

      begin

            if str[i] <> str[len - i + 1] then

            begin

                  exit(false);

            end;

      end;

      exit(true);

end;

function countSuperSymmetricalSubstrings(s: string): integer;

var

      i, j, len, count: integer;

begin

      len := length(s);

      count := 0;

      for i := 1 to len do

      begin

            for j := 2 to len - i + 1 do

            begin

                  if isSymmetrical(copy(s, i, j)) then

                  begin

                        count := count + 1;

                  end;

            end;

      end;

      count := count + len;

      exit(count);

end;

begin

      write('Nhap xau S: ');

      readln(s);

      writeln('So xau con sieu doi xung cua S: ', countSuperSymmetricalSubstrings(s));

      readln;

end.

30 tháng 6 2023

sao mình chạy nó ra 12 v bạn

 

19 tháng 8 2023

Tham khảo:

Quy trình thiết kế theo phương pháp làm mịn dần để kiểm tra xâu kí tự có là đối xứng hay không gồm các bước sau:

Bước 1: Nhận đầu vào là xâu kí tự cần kiểm tra.

Bước 2: Loại bỏ các kí tự không cần thiết, chẳng hạn khoảng trắng và dấu cách, để chuẩn bị cho quá trình kiểm tra.

Bước 3: Chuyển đổi xâu kí tự về dạng chữ thường hoặc dạng chữ hoa (tuỳ thuộc vào yêu cầu của đề bài) để đảm bảo tính nhất quán trong quá trình kiểm tra.

Bước 4: Sử dụng một vòng lặp để so sánh các kí tự ở đầu và cuối xâu kí tự, sau đó di chuyển lần lượt về phía nhau.

Bước 5: Trong quá trình lặp lại, so sánh các kí tự ở hai vị trí tương ứng với nhau. Nếu chúng khác nhau, xâu kí tự không là đối xứng và chương trình dừng lại, trả về kết quả là "Không đối xứng".

Bước 6: Nếu các kí tự ở hai vị trí tương ứng với nhau đều giống nhau, tiếp tục di chuyển các con trỏ về phía nhau và so sánh các kí tự tiếp theo cho đến khi hoàn thành kiểm tra toàn bộ xâu kí tự.

Bước 7: Nếu tất cả các cặp kí tự ở vị trí tương ứng với nhau đều giống nhau, tức là xâu kí tự là đối xứng, chương trình dừng lại và trả về kết quả là "Đối xứng".

 

Bước 8: Kết thúc chương trình và đưa ra kết quả cuối cùng.

Chương trình:

def kiem_tra_doi_xung(xau):

 # Loại bỏ các kí tự không cần thiết và chuyển đổi xâu về dạng chữ thường

 xau = xau.replace(" ", "").lower()

 n = len(xau)

 # Sử dụng vòng lặp để kiểm tra từ đầu và cuối xâu kí tự

 for i in range(n // 2):

  if xau[i] != xau[n - i - 1]:

   return "Không đối xứng"

 return "Đối xứng"

31 tháng 10 2021

#include <iostream>
#include <string>
using namespace std;
int main()
{
    string st;
    int dai,i,kt;
    cout<<"Nhap chuoi:"; getline(cin,st);
    dai=st.length();
    kt=0;
    for (int i=0;i<dai;i++)
        if (st[i]!=st[dai-i-1]) kt=1;
    if (kt==0) cout<<"YES";
    else cout<<"NO";
    return 0;
}

 

10 tháng 11 2021

giúp mk thêm 1 câu nx đk?

13 tháng 2 2022

uses crt;

var a,b,c:string;

i,d1,d2:integer;

begin

clrscr;

write('Nhap xau a:'); readln(a);

write('Nhap xau b:'); readln(b);

d1:=length(a);

d2:=length(b);

writeln('Tong do dai hai xau la: ',d1+d2);

c:=#32;

for i:=1 to d1 do 

  if (a[i] in ['A'..'Z']) or (a[i] in ['a'..'z']) then c:=c+a[i];

for i:=1 to d2 do 

  if b[i] in ['0'..'9'] then c:=c+b[i];

writeln('Xau c la: ',c);

readln;

end.

13 tháng 2 2022

Làm vậy sẽ thừa 1 kí tự trắng ở đầu tiên trong xâu C bạn nhé. Bạn nên gán c:=''; là OK nhất. Nhưng bài làm bài cũng rất tốt^^, mình chỉ góp ý lỗi sai nhỏ, chúc bạn học tốt ^^.

3 tháng 3 2021

program bai_10_chuong_4;

uses crt;

var

s: string[100];

i, dem: integer;

Begin

clrscr;

write('Nhap xau vao:'); readln(s); dem:= 0;

for i:= 1 to length(s) do

if ('0'<=s[i]) and(s[i]<=’9') then dem:=dem+l;

Writeln('Trong xau s co '»dem,' chu so thap phan');

readln;

End.

 

uses crt;

var st:string[100];

i,d,kt:integer;

begin

clrscr;

write('Nhap xau:'); readln(st);

kt:=0;

for i:=1 to length(st) do

if st[i]<>st[length(st)-i+1] then kt:=1;

if kt=0 then write('Xau doi xung')

else writeln('Xau khong doi xung');

readln;

end.

uses crt;

var a,b,c:string;

i,d1,d2:integer;

begin

clrscr;

write('Nhap xau a:'); readln(a);

write('Nhap xau b:'); readln(b);

d1:=length(a);

d2:=length(b);

writeln('Tong do dai hai xau la: ',d1+d2);

c:=#32;

for i:=1 to d1 do 

  if (a[i] in ['A'..'Z']) or (a[i] in ['a'..'z']) then c:=c+a[i];

for i:=1 to d2 do 

  if b[i] in ['0'..'9'] then c:=c+b[i];

writeln('Xau c la: ',c);

readln;

end.

26 tháng 2 2021

Program HOC24;

const fi='bai24.inp';

fo='bai24.out';

var f: text;

s: string;

procedure ip;

begin

assign(f,fi);

reset(f);

read(f,s);

close(f);

end;

procedure out;

begin

assign(f,fo);

rewrite(f);

if s='palindrome' then write(f,'La xau palindrome') else write(f,'Khong phai xau palindrome');

close(f);

end;

begin

ip;

out;

end.

26 tháng 2 2021

Không đúng rồi ạ