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.

viết chương trình pascal Hoán vị ký tự theo khóa - Tên chương trình GRCAE.??? Nhập vào xâu S chỉ chứa các ký tự là chỉ cái in thường và khoảng trắng. Cho trước khóa m là một hoán vị của n số (2<n<18). Để mã hóa một xâu ký tự ta có thể chia xâu thành từng nhóm từ trái sang phải mỗi nhóm có n ký tự; nếu nhóm cuối không đủ n ký tự thì ta có thể thêm các ký tự trắng vào sau cho đủ. Sau đó hoán vị các ký tự trong...
Đọc tiếp

viết chương trình pascal Hoán vị ký tự theo khóa - Tên chương trình GRCAE.???

Nhập vào xâu S chỉ chứa các ký tự là chỉ cái in thường và khoảng trắng.

Cho trước khóa m là một hoán vị của n số (2<n<18). Để mã hóa một xâu ký tự ta có thể chia xâu thành từng nhóm từ trái sang phải mỗi nhóm có n ký tự; nếu nhóm cuối không đủ n ký tự thì ta có thể thêm các ký tự trắng vào sau cho đủ. Sau đó hoán vị các ký tự trong từng nhóm theo khóa, ghép các nhóm xâu lại theo thứ tự ta được một xâu đã mã hóa. Hãy viết chương trình mã hóa một xâu kí tự cho trước.

Ví dụ: Với n=8 và khóa m=87345621, thực mã hóa xâu S = “hello every body” như sau:

Tách xâu S thành các xâu mỗi xâu có 8 ký tự:

S1 = “hello ev”; S2 = “ery o body”

Thực hiện mã hóa xâu S1, S2 theo khóa m ta được S1’ và S2’:

S1’ = “vello eh”; S2’ =”ydy bore”

Input: GRCAE.INP

· Dòng 1: số nguyên n (2<n<18) và m (m là số nguyên có n chữ số).

· Dòng 2: ghi xâu cần mã hóa (độ dài xâu <=10^5).

Ouput: GRCAE.OUT

· Mỗi dòng ghi 1 xâu có n ký tự đã được mã hóa.

Ví dụ:

GRCAE.INP GRCAE.OUT

8 87345621

hello every body vello eh ydy bore

0
18 tháng 1 2021

Program HOC24;

var s: string;

tg,d,max,i: byte;

code: integer;

begin

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

// cau a

for i:=1 to length(s) do if s[i] in ['a'..'z'] then write(upcase(s[i]));

//------

writeln;

//-cau b

for i:=length(s) downto 1 do if s[i] in ['0'..'9'] then write(s[i]);

//------

writeln;

//---cau c

d:=0;

for i:= 1 to length(s) do

if s[i] in ['0'..'9'] then 

begin

val(s[i],tg,code);

if tg>max then max:=tg;

d:=d+1;

end;

if d=0 then write('Khong co chu so trong day') else write('Chu so lon nhat la : ',max);

readln 

end.

uses crt;

var st,st1:string;

d,i,d1,max,x,y:integer;

begin

clrscr;

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

d:=length(st);

writeln('Day cac ki tu thuong doi sang chu hoa la: ');

for i:=1 to d do 

  if st[i] in ['a'..'z'] then write(upcase(st[i]):4);

st1:='';

for i:=1 to d do 

  if st[i] in ['0'..'9'] then st1:=st1+st[i];

d1:=length(st1);

for i:=d1 downto 1 do 

  write(st1[i]:4);

writeln;

max:=0;

for i:=1 to d1 do 

  begin

val(st1[i],x,y);

if max<x then max:=x;

end;

writeln('Chu so lon nhat trong xau la: ',max);

readln;

end.

uses crt;

var s,s1,s2:string;

i,d:integer;

begin

clrscr;

readln(s);

s1:='';

s2:='';

d:=length(s);

for i:=1 to d do

  begin

if s[i] in ['0'..'9'] then s1:=s1+s[i];

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

end;

writeln('Xau chua cac ki tu so la: ',s1);

writeln('Xau chua cac ki tu chu la: ',s2);

readln;

end.

uses crt;

const fi='dulieu.txt';

var f1:text;

st:string;

i,d:integer;

begin

clrscr;

assign(f1,fi); rewrite(f1);

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

d:=length(st);

for i:=1 to d do 

if (st[i] in ['A'..Z']) or (st[i] in ['0'..'9']) or (st[i]=#32) then write(f1,st[i]);

close(f1);

end.

uses crt;

const fi='dulieu.txt';

var f1:text;

st:string;

i,d:integer;

begin

clrscr;

assign(f1,fi); rewrite(f1);

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

d:=length(st);

for i:=1 to d do 

if (st[i] in ['A'..Z']) or (st[i] in ['0'..'9']) or (st[i]=#32) then write(f1,st[i]);

close(f1);

end.

Bài 2. Viết chương trình nhập vào một xâu bất kỳ. In ra màn hình xâu đó sau khi đã xóa hếtký tự trắng dư thừa. Ký tự trắng dư thừa (hay còn gọi là dấu cách, ký tự trống) là kýtự trắng xuất hiện ở trước từ đầu tiên của xâu, sau từ cuối cùng của xâu và giữa cáctừ cách nhau nhiều hơn 1 ký tự trắng.Ví dụ: Giả sử * là ký tự trắng.Cho xâu: ’**xin***chao**’. =&gt; Xâu sau khi được xử lý ’xin*chao’Gợi ý:Kiểm...
Đọc tiếp

Bài 2. Viết chương trình nhập vào một xâu bất kỳ. In ra màn hình xâu đó sau khi đã xóa hết
ký tự trắng dư thừa. Ký tự trắng dư thừa (hay còn gọi là dấu cách, ký tự trống) là ký
tự trắng xuất hiện ở trước từ đầu tiên của xâu, sau từ cuối cùng của xâu và giữa các
từ cách nhau nhiều hơn 1 ký tự trắng.
Ví dụ: Giả sử * là ký tự trắng.
Cho xâu: ’**xin***chao**’. =&gt; Xâu sau khi được xử lý ’xin*chao’
Gợi ý:
Kiểm tra phần tử trong xâu có phải là ký tự trắng hay không? Nếu đúng thì xóa ký tự trắng đó
cho đến khi không còn ký tự trắng ở đầu xâu.
Kiểm tra từ đầu đến cuối xâu, nếu có 2 ký tự trắng liên tiếp =&gt; Xóa đi 1 ký tự trắng, thự hiện
công việc xóa cho đến khi giữa các từ trong xâu chỉ cách nhau 1 ký tự trắng.
Sau khi xử lý các ký tự trắng dư thừa ở đầu xâu, giữa xâu. Ta xử lý tiếp ký tự trắng dư thừa ở
cuối xâu bằng cách kiểm tra ký tự cuối cùng có phải là ký tự trắng hay không. Nếu đúng thì xóa
cho đến khi ký tự cuối cùng của xâu không phải là ký tự trắng.
B1: Khai báo.
B2: Nhập xâu bất kỳ.
B3: Xoá ký tự trắng dư thừa
B3.1: Xoá ký tự trắng dư thừa xuất hiện ở đầu tiên của xâu (nếu có).
Chừng nào ký tự đầu tiên trong xâu là ký tự trắng =&gt; xoá ký tự trắng đó cho đến khi đầu xâu
không phải là ký tự trắng.
B3.2: Xoá ký tự trắng dư thừa cuối cùng của xâu (nếu có).
Chừng nào trong xâu xuất hiện 2 ký tự trắng trong xâu =&gt; xoá đi 1 ký tự trắng dư thừa.
B3.3: Xoá ký tự trắng dư thừa giữa các từ (nếu có).
Chừng nào ký tự cuối cùng là ký tự trắng =&gt; Xoá đi ký tự đó.
B4: In ra kết quả

1

#include <bits/stdc++.h>

using namespace std;

string st;

int d,i;

int main()

{

getline(cin,st);

d=st.length();

for (i=0; i<=d-1; i++)

if ((st[i]==' ') and (st[i+1]=' ')) st.erase(i,1);

cout<<st;

return 0;

}

uses crt;

var st:string;

i,d:integer;

begin

clrscr;

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

d:=length(st);

writeln('Xau vua nhap la: ',st);

for i:=1 to d do 

  if st[i] in ['a'..'z'] then upcase(st[i]);

writeln(st);

readln;

end.

13 tháng 3 2022

mình chưa học đến đó 😀🙃🙃

Bạn ghi lại đề đi bạn