Đến nội dung

Duongdz2k7 nội dung

Có 25 mục bởi Duongdz2k7 (Tìm giới hạn từ 28-04-2020)


Sắp theo                Sắp xếp  

#728642 nén - giải nén xâu

Đã gửi bởi Duongdz2k7 on 05-07-2021 - 21:36 trong Góc Tin học

à mà nếu hệ số lớn hơn 9 thì anh em dùng hàm concat để ghép hệ số vào rồi dùng val nha! :D




#728564 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 02-07-2021 - 15:49 trong Góc Tin học

Giúp mình bài này với :

B20:Nhập vào một số N liệt kê tất cả các phân số của số đó trong khoảng từ 0 đến 1.

VD : Nhập n=5

Xuất 0/1  1/2   1/3  1/4  1/5   2/3   2/5  3/4  3/5  4/5  1/1 

Mình không hiểu đề nên giải thích hộ luôn nha :D




#728500 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 29-06-2021 - 14:39 trong Góc Tin học

Em sửa thế này được không ạ ! :closedeyes: 

program bt1;
uses crt;
type
st20=string[20];
st10=string[10];
var
f:text;
ht:st20;
ns,qq:st10;
dtb:real;
xl:char;
i:word;
fn:string;
bht:st20;
begin
clrscr;
write('nhap ten file:');
readln(fn);
assign(f,fn);
rewrite(f);
i:=0;
writeln(#32:8,'NHAP THONG TIN CUA CAC SINH VIEN :');
repeat
inc(i);
writeln('Nhap vao thong tin cua ban thu ',i,' :');
write('Ho va ten : ');
readln(bht);
if bht <> '' then
begin
ht:=bht;
writeln(f,ht);
write('nhap nam sinh (dd/yy/wwww) : ');
readln(ns);
writeln(f,ns);
write('nhap vao que quan : ');
readln(qq);
writeln(f,qq);
write('nhap vao diem TB : ');
readln(dtb);
writeln(f,dtb:1:2);
if dtb < 5 then
writeln(f,'D')
else
if dtb < 6.5 then
writeln(f,'C')
else
if dtb < 8 then
writeln(f,'B')
else
writeln(f,'A');
writeln(f);
end;
until bht='';
close(f);
readln;
end.
>>Nếu sai hoặc dài anh sửa hộ em ! :D
>>Em thấy nó hơi lâu :(



#728499 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 29-06-2021 - 14:14 trong Góc Tin học

lỗi bài này nằm ở chỗ này 

var 

f:file of sinhvien;

mà sinhvien là một bản ghi ,nên ko thể xuống dong 

sao em ko làm đơn giản hơn 

khai báo f:text; là ổn mà 

 

khối cx cần học file nha, tùy tỉnh nhưng thường là có file

với lại file em chỉ cần bt xuất nhập thôi 

Thanks anh nha ! :D  :like

Tại em mới học nên không biết làm !

Mà "bt" là gì vậy anh ?




#728492 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 28-06-2021 - 22:30 trong Góc Tin học

Đây là bài của em ! :closedeyes:

program bt1;
uses crt;
type
st20=string[20];
st10=string[10];
sinhvien=record
ht:st20;
ns,qq:st10;
dtb:real;
xl:char;
end;
var
f:file of sinhvien;
fn:string;
sv:sinhvien;
bht:st20;
i:word;
begin
clrscr;
write('nhap vao ten file muon luu :');
readln(fn);
assign(f,fn);
rewrite(f);
i:=1;
writeln('nhap thong tin ca nhan cua cac sinh vien :');
repeat
write('ho va ten cua sinh vien thu ',i,' :');
readln(bht);
if bht<>'' then
begin
sv.ht:=bht;
write('nhap ngay thg (dd/yy/www) :');
readln(sv.ns);
write('nhap vao que quan :');
readln(sv.qq);
write('diem trung binh :');
readln(sv.dtb);
if sv.dtb<5 then
sv.xl:='D'
else
if sv.dtb<6.5 then
sv.xl:='C'
else
if sv.dtb<8 then
sv.xl:='B'
else
sv.xl:='A';
write(f,sv);  <==== chỗ này em chuyển thành writeln(f,sv);  nó báo lỗi là:Error:Can't use readln or writeln on typed file  :angry: (Tại khi in ra kết quả nó cứ in trên 1 dòng nên không đẹp :D )
end;
inc(i);
until bht='';
close(f);
readln;
end.
>>Mà anh ơi thi tin THCS có cần học phần file không ạ ! Tại còn ít thời gian nên em chỉ ôn những mảng thi cho hiệu quả thôi ạ! :D



#728491 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 28-06-2021 - 22:25 trong Góc Tin học

xuống dòng bt a 

gửi ảnh đi, anh xem

 

Em không gửi được ảnh , nó bảo định dạng file hình ảnh không sử dụng được .

Tại em mới học file nên không hiểu

Em xem trên mạng nó bảo  :

3.2.3. Thủ tục Writeln

            Cú pháp: Writeln(F, x);

            Chức năng: Ghi giá trị x vào file ở vị trí con trỏ file. Kết thúc thủ tục, con trỏ file sẽ chuyển về đầu dòng sau.

Nhưng em làm nó báo lỗi là 

Error : Can't use readln or writeln on typed file

Là sao ạ !

Em xuất kết quả ra file ở ổ C:\

Hay là phải xuất kết quả ra file trong free pascal hả anh ? 




#728483 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 28-06-2021 - 16:21 trong Góc Tin học

Anh ơi trong free pascal có cho con trỏ file xuống dòng được ko ạ !

em làm thế này : writeln(f,sv) nó báo không đc dùng writeln !




#728479 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 28-06-2021 - 10:02 trong Góc Tin học

em chuẩn bị thi tin học trẻ à 

Vâng ạ ! Năm nay dịch nó cho thi muộn ! Vẫn chưa thi  :(

Mà nó thông báo chọn em đi thi trước có 1 tuần nên mới ôn được chút ! :(




#728476 Số nguyên tố rút gọn

Đã gửi bởi Duongdz2k7 on 27-06-2021 - 23:20 trong Góc Tin học



 

 

program b2;
uses crt;
var i,n,j,k,l,p,t,a,b,x:longint;
c,d:array[1..1000] of longint;
function ktm(n:longint):longint;
var i,j,l,k,t:longint;
c:array[1..1000] of longint;
begin
i:=2;l:=0;
repeat
while n mod i<>0 do
i:=i+1;
l:=l+1;
c[l]:=i;
n:=n div i;
until n=1;
for i:=1 to l-1 do
begin
j:=i+1;
while j<=l do
if c[i]=c[j] then
   begin
   for k:=j to l do
   c[k]:=c[k+1];
   l:=l-1;
   end else j:=j+1;
end;
t:=0;
for i:=1 to l do
t:=t+c[i];
ktm:=t;
end;
begin
clrscr;
{cau a}
repeat
write('Nhap n:');readln(n);
if (1<n)and(n<1000000) then break;
writeln('Nhap 1<n<1000000');
until false;
x:=ktm(n);
writeln('So nguyen to rut gon cua ',n,' la:',x);
{cau b}
repeat
write('Nhap a:');readln(a);
if a<=10000 then break;
writeln('Nhap a<=10000');
until false;
repeat
write('Nhap b:');readln(b);
if b>a then break;
writeln('Nhap b<a');
until false;
for i:=a to b do
if (ktm(i)=ktm(n)) then
   begin
   k:=k+1;
   write(i,'   ');
   if k mod 20=0 then writeln;
   end;
writeln;
writeln('Co ',k,' so');
readln
end.

 

oh no! :(

bài bạn dài và khó hiểu quá!

Bài này ngắn và dễ hiểu hơn !

thực ra bạn chỉ cần tạo hai chương trình con  :D

1 là kt số nguyên tố,2 là số nguyên tố rút gọn của số đó (chạy từ 2-n rồi kt tính nguyên tố và chia hết xong thì bỏ qua chứ ko cần xóa các phần tử trùng nhau, làm như này:

Code :

program bt1;
uses crt;
var a,i,b,j,d,n:longint;
    c:array[1..10000]of longint;
function kt(n:longint):boolean;
var i:longint;
a:boolean;
begin
     a:=true;
  for i:=2 to n-1 do
if n mod i =0 then
a:=a and false;
if n<2 then
kt:=false
else
kt:=a;
end;
function t(n:longint):longint;
var i:longint;
begin
     t:=0;
     if (kt(n)) then t:=n
     else
       for i:=2 to n do
         if ((n mod i=0)and(kt(i))) then t:=t+i;
end;
begin
write('   Nhap n= ');
readln(n);
writeln('   So nguyen to rut gon cua ',n,' la ',t(n));
write('nhap a:');
readln(a);
write('nhap b:');
readln(b);
j:=0;
d:=0;
for i:= a to b do
if t(n)=t(i) then
begin
inc(d);
inc(j);
c[j]:=i;
end;
writeln('co ',d,' so co cung sntrg la:');
for i:=1 to d do
write(c[i]:6);
readln;
end.



#728474 Đề và code Pascal

Đã gửi bởi Duongdz2k7 on 27-06-2021 - 22:45 trong Góc Tin học



 

bài này vẫn chưa hay lắm

program bt1;

uses crt;
var a:array[1..100] of string;
c:array [0..255] of char;
s:string;
d,i,j,r:integer;
begin
 write('nhap xau:');
 readln(s);
 d:=length(s)*(length(s)-1);
 for i:=0 to length(s)-1 do begin 
  c[i]:=s[i+1]; 
 end;
 for i:=1 to d do a[i]:='';
 for i:=1 to d do
 for j:=1 to length(s)-1 do
 begin
 r:=((((0-i)+length(s)*j)+d) mod d) div (length(s)-1);
 a[i]:=a[i]+c[r];
 end;
 for i:=0 to d-1 do
 writeln(c[i mod length(s)],a[i+1]);
readln;
end. 
>> bài khá là khó hiểu, ứng dụng giải ngược (mk cx it sd)

 

thk anh nha!

nhưng em mới lớp 8 nên ko hiểu lắm !

bây giờ chỉ chơi hệ dễ hiểu thôi ạ haha ! :D




#728473 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 27-06-2021 - 22:40 trong Góc Tin học

 

sửa lại :
program bt1;
uses crt;
var a:integer;
i,n,d1,d2,d3:integer;
function kt(n:integer):boolean;
var a:boolean;
i:integer;
begin
a:=true;
for i:=2 to n-1 do
if n mod i=0 then
a:=a and false;
if n<2 then
kt:=false
else
kt:=a;
end;
begin
clrscr;
write('nhap vao so phan tu cua mang:');
readln(n);
d1:=0;
d2:=0;
d3:=0;
for i:=1 to n do
begin
write('nhap a[',i,']:');
readln(a);
if a mod 2=0 then
d1:=d1+1
else
d2:=d2+1;
if kt(a) then
d3:=d3+1;
end;
write(d1:4,d2:4,d3:4);
readln;
end.
>>Thấy trong phần 'có gì mới ' 
>>là hs chuyên tin chơi theo hệ tối ưu (2k4)

 

hello a nha (anh bằng tuổi chị em haha) ! :D

em 2k7(Lớp 8->9)!

em cx sắp thi tin!

em hiểu rồi !

anh ko sử dụng mảng mà dùng biến thường rồi kiểm tra luôn !

Thk a nha ! :like




#728469 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 27-06-2021 - 20:56 trong Góc Tin học

Xử lí tại đầu vào sẽ tối ưu hơn

>>tiết kiệm biến mảng a 

Thk bạn góp ý (mặc dù mình cx ko hiểu lắm) :D  :like

Mà sao bạn theo dõi mình à sao trích cả hai bài rồi :closedeyes:  :D




#728468 Xâu lớn nhất

Đã gửi bởi Duongdz2k7 on 27-06-2021 - 20:52 trong Góc Tin học



 

tiếp tục bài này cx xử lí đầu vào tiết kiệm a 

pp này là tối ưu :

program bt1;
uses crt;
var a:array[1..501] of string;
s:string;
b:boolean;
d,i,n,j,r:integer;
begin
clrscr;
write('nhap vao so luong xau:');
readln(n);
for i:=1 to n div 2 +1  do a[i]:='*';
d:=0;
for r:=1 to n do
begin
 write('nhap xau thu ',r,' :');
 readln(s);
 b:=false;
 for i:=1 to d do if a[i]=s then begin b:=true; j:=i; end;
 if b=false then begin d:=d+1; a[d]:=s end else begin a[j]:=a[d]; a[d]:='*'; d:=d-1; end;
end;
write(a[1]);
readln;
end. 
>> nó rất sát đề , vì dòng sai xuất hiện số lần chẵn 

 

uk! Mk quên ko đọc chú thích :D




#728461 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 27-06-2021 - 16:26 trong Góc Tin học

b9: code:

program bt1;
uses crt;
var a:array[1..50] of integer;
i,n,d1,d2,d3:integer;
function kt(n:integer):boolean;
var a:boolean;
i:integer;
begin
a:=true;
for i:=2 to n-1 do
if n mod i=0 then
a:=a and false;
if n<2 then
kt:=false
else
kt:=a;
end;
begin
clrscr;
write('nhap vao so phan tu cua mang:');
readln(n);
for i:=1 to n do
begin
write('nhap a[',i,']:');
readln(a[i]);
end;
d1:=0;
d2:=0;
d3:=0;
for i:=1 to n do
begin
if a[i] mod 2=0 then
d1:=d1+1
else
d2:=d2+1;
if kt(a[i]) then
d3:=d3+1;
end;
write(d1:4,d2:4,d3:4);
readln;
end.



#728460 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 27-06-2021 - 16:16 trong Góc Tin học

Mấy bài tệp để mk nghiên cứu đã

chưa học




#728459 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 27-06-2021 - 16:13 trong Góc Tin học

cau 12 :

code:

program bt1;
uses crt;
var n,i:integer;
function kt(n:integer):boolean;
var a:boolean;
i:integer;
begin
a:=true;
for i:=2 to n-1 do
if n mod i=0 then
a:=a and false;
if n<2 then
kt:=false
else;
kt:=a;
end;
begin
clrscr;
write('nhap n:');
readln(n);
if kt(n) then
write(n,' la so nguyen to')
else
begin
write(n,' = ');
i:=2;
while n>1 do
if n mod i=0 then
begin
write(i);
n:=n div i;
if n>1 then
write(' . ');
end
else
i:=i+1;
end;
readln;
end.



#728458 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 27-06-2021 - 15:54 trong Góc Tin học

Bài 4 mk chưa học tệp nên làm mảng xâu nha  :D
program bt1;
uses crt;
var a:array[1..10000] of string;
d,i,n,j:integer;
begin
clrscr;
write('nhap vao so luong xau:');
readln(n);
for i:=1 to n do
begin
write('nhap xau thu ',i,' :');
readln(a[i]);
end;
for i:=1 to n do
begin
d:=0;
for j:=1 to n do
if a[i]=a[j] then
d:=d+1;
if d=1 then
writeln(a[i]);
end;
readln;
end.



#728457 Xâu lớn nhất

Đã gửi bởi Duongdz2k7 on 27-06-2021 - 15:50 trong Góc Tin học



 

program bka;
uses crt;
var i,n,j,k,l,p:integer;
d:array[1..1000] of integer;
a:array[1..100] of string;
s,tg:string;
begin
clrscr;
write('Nhap so xau:');readln(n);
for i:=1 to n do
begin
write('a[',i,']=');readln(a[i]);
end;
for i:=1 to n do
d[i]:=1;
for i:=1 to n-1 do
begin
j:=i+1;
while j<=n do
if a[i]=a[j] then
   begin
   for k:=j to n do
   a[k]:=a[k+1];
   n:=n-1;
   d[i]:=d[i]+1;
   end else j:=j+1;
end;
for i:=1 to n-1 do
for j:=i+1 to n do
if d[i]>d[j] then
begin
tg:=a[i];
a[i]:=a[j];
a[j]:=tg;
end;
writeln('Chuoi ky tu dai nhat la:',a[1]);
readln
end.
*Lưu ý:Nên chạy bằng Tubor Pascal !
P/s:Xin lỗi chú Lâm vì anh đã ăn cắp bản quyền  :closedeyes:

 

Bài này làm kiểu mảng xâu dễ mà , sao bạn làm khó hiểu thế  :closedeyes:

Đây là code của mk  :D

program bt1;
uses crt;
var a:array[1..10000] of string;
d,i,n,j:integer;
begin
clrscr;
write('nhap vao so luong xau:');
readln(n);
for i:=1 to n do
begin
write('nhap xau thu ',i,' :');
readln(a[i]);
end;
for i:=1 to n do
begin
d:=0;
for j:=1 to n do
if a[i]=a[j] then
d:=d+1;
if d=1 then
writeln(a[i]);
end;
readln;
end. :like



#728441 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 26-06-2021 - 23:07 trong Góc Tin học

Bài 3:

Code: 

program bt1;
uses crt;
var st:string;
v,i,t,s,p,w:integer;
begin
clrscr;
write('nhap vao xau:');
readln(st);
t:=0;
s:=1;
for i:=1 to length(st) do
begin
v:=i+1;
while st[v]=st[i] do
begin
inc(v);
inc(s);
end;
if t<s then
t:=s;
s:=1;
end;
write(t:10);
s:=0;
p:=0;
for i:=1 to length(st) do
begin
w:=0;
v:=i+1;
while (w<=1) or (st[v]=st[i]) do
begin
inc(s);
inc(v);
if st[v]<>st[i] then
w:=w+1;
end;
if p<s then
p:=s;
s:=0;
w:=0;
end;
write(p:10);
readln;
end.



#728440 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 26-06-2021 - 23:05 trong Góc Tin học

Bài 2 nha : :D

Bài này cứ cho chạy từ 1-n rồi kiểm tra xem nó có vừa là số nguyên tố vừa là ước của n ko la đc  :like  

program bt1;
uses crt;
var a,i,b,j,d,n:longint;
    c:array[1..10000]of longint;
function kt(n:longint):boolean;
var i:longint;
a:boolean;
begin
     a:=true;
  for i:=2 to n-1 do
if n mod i =0 then
a:=a and false;
if n<2 then
kt:=false
else
kt:=a;
end;
function t(n:longint):longint;
var i:longint;
begin
     t:=0;
     if (kt(n)) then t:=n
     else
       for i:=2 to n do
         if ((n mod i=0)and(kt(i))) then t:=t+i;
end;
begin
clrscr;
writeln('a)');
write('   Nhap n= ');
readln(n);
writeln('   So nguyen to rut gon cua ',n,' la ',t(n));
writeln('b)');
write('nhap a:');
readln(a);
write('nhap b:');
readln(b);
j:=0;
d:=0;
for i:= a to b do
if t(n)=t(i) then
begin
inc(d);
inc(j);
c[j]:=i;
end;
writeln('co ',d,' so co cung sntrg la:');
for i:=1 to d do
write(c[i]:6);
readln;
end.



#728439 Thi tin học trẻ cấp THCS

Đã gửi bởi Duongdz2k7 on 26-06-2021 - 22:59 trong Góc Tin học

 

Bài 1: Dãy số hạnh phúc
Dãy số nguyên dương a1, a2, ..., an là dãy số hạnh phúc nếu:
+ Là dãy số giảm dần

+ Với mỗi a(i) với i>1 thì a(i) hoặc là số nguyên tố hoặc là ước của một trong các số từ a(1) đến a(i-1)

Lập trình nhập từ bàn phím số nguyên dương N<=1000 sau đó đưa ra màn hình dãy số hạnh phúc bắt đầu từ N
VD:
N=5 thì DSHP: 5 3 2 1
N=8 thi DSHP: 8 7 5 4 3 2 1
Bài 2
Số nguyên tố rút gọn của một số tự nhiên n chính là tổng các ước nguyên tố của n.
Ví dụ: n=252=2.2.3.3.7 (n có 3 ước nguyên tố là 2, 3 và 7)
Số nguyên tố rút gọn của n là 2+3+7=12
Yêu cầu:
a/ Nhập số tự nhiên n từ bàn phím, in ra số nguyên tố rút gọn của n. (1<n<1000000)
b/ Nhập 2 số nguyên a, b không vượt quá 10000 (a<b). In ra các số có cùng số nguyên tố rút gọn với n trong đoạn a đến b và số lượng các số tìm được.
Bài 3:
Cho xâu kí tự S bao gồm toàn các ký tự ‘a’ và ‘b’, không quá 255 ký tự. Dãy con đúng của dãy S là một dãy con liên tục bất kì của S bao gồm các ký tự giống nhau. Dãy con đúng bậc 1 của dãy S là một dãy con liên tục bất kỳ của dãy S bao gồm các ký tự giống nhau nhưng được thêm 1 ký tự khác (ví dụ ‘aaaabaaa’, baaaa, aaaab). Trường hợp đặc biệt, dãy S chỉ có 1 loại ký tự thì dãy con đúng cũng chính là dãy con đúng bậc 1.
Yêu cầu:
a/ Hãy tính độ dài lớn nhất dãy con đúng của dãy S.
b/ Hãy tính độ dài lớn nhất dãy con đúng bậc 1 của dãy S.
Ví dụ: ‘aaabaaabbaaaaa’
Độ dài lớn nhất của dãy con đúng: 5 (‘aaabaaabbaaaaa’)
Độ dài lớn nhất của dãy con đúng bậc 1: 7 (‘aaabaaabbaaaaa’)
Bài 4:
Cho trước tập tin văn bản INPUT.INP gồm nhiều dòng (không quá 1000 dòng), mỗi dòng chứa một chuỗi ký tự (gồm các chữ cái từ ‘A’ đến ‘Z’ viết dính liền với nhau), mỗi chuỗi dài không quá 255 ký tự. Trong tập tin này có duy nhất một chuỗi xuất hiện đúng một lần, các chuỗi còn lại đều xuất hiện đúng k lần. (Số k không cho trước, nhưng biết rằng k là một số chẵn và k≠0).
Yêu cầu:
Viết chương trình đọc tập tin INPUT.INP xử lý và tìm chuỗi duy nhất đó, ghi kết quả tìm được vào tập tin văn bản OUTPUT.OUT.
Kết quả: Tập tin OUTPUT.OUT có một dòng là chuỗi ký tự tìm được theo yêu cầu.
Bài 5:ĐỘ DẦY VÀ ĐỘ CAO
+ Định nghĩa: Một số tự nhiên N. Độ dầy số tự nhiên N là số chữ số của N, độ cao số tự nhiên N là tổng các chữ số của N.
Chẳng hạn: N = 232 thì N có độ dầy là 3, độ cao là 7.
+ Yêu cầu: Cho trước số tự nhiên N. Tính độ dầy và độ cao của số tự nhiên N.
+ Dữ liệu vào: Từ tệp văn bản SO.INP chỉ có 1 dòng chứa số tự nhiên N (1<=N<1016).
+ Kết quả: Ghi ra tệp văn bản SO.OUT có dạng:
- Dòng đầu tiên ghi độ dầy của số N.
- Dòng kế tiếp ghi độ cao của số N.
BÀI 6:CHUẨN HÓA VĂN BẢN
+ Định nghĩa: Một văn bản được gọi là văn bản chuẩn nếu:
- Hai từ liền nhau có duy nhất một dấu cách trống;
- Dấu ngắt câu (dấu chấm, dấu phẩy, dấu chấm phẩy, dấu chấm hỏi, dấu chấm than) được đặt sát vào từ ngay trước nó, sau đó mới đến dấu cách trống;
- Dấu mở ngoặc đơn đặt sát vào phía bên trái của từ bắt đầu mở ngoặc;
- Dấu đóng ngoặc đơn đặt sát bên phải từ cuối cùng được đóng ngoặc.
+ Yêu cầu: Cho trước một văn bản, kiểm tra và đưa đoạn văn bản về dạng văn bản chuẩn.
+ Dữ liệu vào: từ tệp văn bản VANBAN.INP, gồm nhiều dòng, mỗi dòng không quá 255 kí tự.
+ Kết quả: ghi ra tệp văn bản VANBAN.OUT lưu trữ đoạn văn bản đã được chuẩn hóa.
BÀI 7:TỔNG LỚN NHẤT
Cho một bảng A gồm N x N sốnguyên (N ≤ 100), các dòng được đánh số trên xuống dưới bắt đầu từ 1, các cột được đánh số từ trái qua phải cũng bắt đầu từ 1. Mỗi số trong bảng có giá trị tuyệt đối không vượt quá 10000. Đường chéo chính của bảng là
đường thẳng nối hai ô (1,1) và (N,N). Như vậy trên bảng có 2N-1 đuờng chéo song song với đường chéo chính.
+ Yêu cầu: Hãy tìm đường chéo song song với đường chéo chính có tổng các phần tử trên đường chéo đó là lớn nhất.
+ Dữ liệu vào: Cho từ tệp văn bản TONG.INPcó dạng:
- Dòng đầu chứa số N.
- Dòng thứ i trong N dòng tiếp theo chứa N số nguyên lần lượt ứng với các phần tử nằm trên dòng thứ i của bảng A.
+ Kết quả: Ghi ra tệp văn bản TONG.OUT có một dòng chứa duy nhất một số nguyên là tổng lớn nhất các phần tử trên đường chéo tìm được.
Bài 8: Tính khoảng cách 
Một trường THCS tổ cức cho giáo viên và học sinh của trường mình đi cắm trại, sinh hoạt ngoài trời ở vườn quốc gia Cúc Phương. Để lên lịch đến thăm khu trại các lớp, thầy hiệu trưởng cần biết khoảng cách từ trại của mình, ở vị trí có tọa độ (0,0) đến trại giáo viên chủ nhiệm đều có tọa độ nguyên (x,y) được ghi trong tệp văn bản TRAI.TXT chứa liên tiếp các cặp số nguyên, các số cách nhau bởi dấu cáh và không kết thúc bằng kí tự xuống dòng.
Lập trình để đọc các cặp tọa độ từ tệp TRAI.TXT, tính rồi đưa ra màn hình khoảng cách (với tọa độ chính xác hai chữ số sau dấu chấm thập phân) giữa trại của mỗi giáo viên chủ nhiệm và trại của thầy hiệu trưởng.
Bài 9:
Viết chương trình nhập từ bàn phím số nguyên dương N (N<<100) và dãy A gồm N số nguyên a1, a2, a3, …, an có giá trị tuyệt đói không lớn hơn 1000. Hãy đưa ra những thông tin sau:
Số lượng số chẵn và số lẻ trong dãy.
Số lượng số nguyên tố trong dãy.
Câu 10:
Nhập vào một số tự nhiên. Lập trình trả lời các câu hỏi sau:
- n có bao nhiêu chữ số?
- Tổng các chữ số của n bằng bao nhiêu?
- Tìm chữ số đầu tiên của n.
- Giả sử trong cách biểu hiện thập phân của n có dạng sau: akak-1 … a2a1a0.
Hãy tính tổng S = ak – ak-1 + ak-2 – … a0.
- Nhập vào số m(m ≤ số chữ số của n). Hãy tính tổng m chữ số cuối cùng của n.
Câu 11: 
Cho một bàn cờ vuông 8 x 8 trên đó cho trước một số quân cờ. Ví dụ hình vẽ sau đây là một bàn cờ như vậy:
* * * 
* * * *
* * * *
* * 

* * *
* * * 
* * * 
Dữ liệu ghi trên tệp văn bản BANCO.TXT bao gồm 8 dòng, mỗi dòng là một sâu nhị phân độ dài 8. Vị trí các quân cờ ứng với số 1, các ô trống ứng với số 0. Ví dụ tệp BANCO.TXT ứng với bàn cờ trên:
01010100
10011001
10100011 
00010100 
00100000
01010001
10011000
01000110
Hãy viết chương trình PASCAL tính số quân cờ liên tục lớn nhất nằm trên một đườc thẳng trên bàn cờ. Đường thẳng ở đây có thể là đường thẳng đứng, đường nằm ngang hoặc đường chéo. Kết quả thể hiện trên màn hình.
Với ví dụ trên chương trình phải in trên màn hình kết quả là 4.
Câu 12:
Nhập vào 1 số tự nhiên N với (0 < N ≤ 65535), phân tích số vừa nhập thành các thừa số nguyên tố, nếu số vừa nhập là số nguyên tố thì chỉ thông báo ra màn hình đây là số nguyên tố.
Ví dụ: 
- Nếu số vừa nhập là 300, thì in ra màn hình 300 = 2. 2. 3. 5. 5
- Nếu số vừa nhập là 307, thì in ra màn hình “307 là số nguyên tố”.

:luoi:  :luoi:  :luoi:

Bài 1 : :closedeyes:

Hướng dẫn :Thực ra (nếu để ý kĩ) đây là dãy số bao gồm những số nguyên tố nhỏ hơn hoặc bằng n và ước của n .

code:

program bt1;
uses crt;
function kt(n:integer):boolean;
var i:integer;
a:boolean;
begin
a:=true;
for i:=2 to n-1 do
if n mod i=0 then
a:=a and false;
if n<2 then
kt:=false
else
kt:=a;
end;
var n,i:integer;
begin
clrscr;
write('nhap n:');
readln(n);
for i:=n downto 1 do
if (kt(i)) or (n mod i=0)  then
write(i:4);
readln;
end.



#728438 Đề và code Pascal

Đã gửi bởi Duongdz2k7 on 26-06-2021 - 22:42 trong Góc Tin học

Hơi lâu chút  :D




#728437 Đề và code Pascal

Đã gửi bởi Duongdz2k7 on 26-06-2021 - 22:41 trong Góc Tin học



Giup toi chuong trinh pascal: chen mang b gom m phân tư vào mãng a gồm n phần tử tại vị trí k

code:
program bt1;
uses crt;
var a,b,c:array[1..100] of integer;
i,k,n,m:integer;
begin
clrscr;
write('nhap vao so phan tu cua mang a:');
readln(n);
for i:=1 to n do
begin
write('nhap a[',i,'] :');
readln(a[i]);
end;
write('nhap vao so phan tu cua mang b:');
readln(m);
for i:=1 to m do
begin
write('nhap b[',i,'] :');
readln(b[i]);
end;
write('nhap k:');
readln(k);
for i:=1 to k-1 do
write(a[i]:4);
for i:=1 to m do
write(b[i]:4);
for i:=k to n do
write(a[i]:4);
readln;
end.



#728435 Đề và code Pascal

Đã gửi bởi Duongdz2k7 on 26-06-2021 - 22:20 trong Góc Tin học

đây là cách của mình cho bài hoán vị chữ cái  :D

thay đổi chút là sẽ thành hoán vị dãy số từ 1-n nên rất tiện


program bt1;
uses crt;
var b,c:boolean;
i,j,z:integer;
t:char;
s:string;
a:array[1..100] of string;
begin
clrscr;
write('nhap xau:');
readln(s);
z:=1;
a[z]:=s;
b:=true;
while b=true do
begin
b:=false;
for i:=2 to length(s) do
begin
c:=true;
t:=s[1];
s[1]:=s[i];
s[i]:=t;
for j:=1 to z do
if s=a[j] then
c:=false;
if c=true then
begin
z:=z+1;
a[z]:=s;
b:=true;
end;
end;
end;
for i:=1 to z do
writeln(a[i]);
readln;
end.



#728414 nén - giải nén xâu

Đã gửi bởi Duongdz2k7 on 26-06-2021 - 14:46 trong Góc Tin học

bài bạn dài quá 

đây là bài của mình 

rất đơn giản :D

program bt1;
uses crt;
var s:string;
a,i,j:integer;
begin
clrscr;
write('nhap xau can giai nen:');
readln(s);
for i:=1 to length(s) do
if s[i] in ['2'..'9'] then
begin
val(s[i],a);
for j:=2 to a do
write(s[i+1]);
end
else
write(s[i]);
readln;
end.