Thứ Hai, 10 tháng 12, 2012

DAY SO DAC BIET


Dãy số đặc biệt
Dãy số A1, A2,..., AN được gọi là dãy số đặc biệt nếu nó thoả mãn các điều kiện:
  • Là dãy số giảm dần;
  • Với mỗi Ai thì Ai hoặc là số nguyên tố hoặc là ước của một trong các số từ A1 đến Ai-1.
Em hãy tìm dãy số đặc biệt dài nhất bắt đầu từ N.
Dữ liệu vào: Từ file văn bản DAYSO.IN là một số nguyên dương N (N < 10000).
Kết quả: Ghi ra file văn bản DAYSO.OUT là dãy số tìm được, các số ghi cách nhau bởi dấu cách.
Ví dụ:
DAYSO.IN
DAYSO.OUT
12
12 11 7 6 5 4 3 2 


ĐỀ XUẤT GIẢI THUẬT NÀO CÁC CÔ CẬU!

Thứ Hai, 3 tháng 12, 2012

bai 3; xac dinh so doi xung

program bai3;
var s:string;
    i,l:integer;
    kt:boolean;
begin
writeln('nhap chuoi so bat ky');
readln(s);
kt:=(true);
l:=length(s);
for i:=1 to length(s) div 2 do
if s[i]<>s[l-i+1] then kt:= (false);
if kt then writeln('chuoi nay doi xung')
else writeln(' chuoi so nay khong doi xung');
readln;
end.

Số Amstrong- Kim Ngân

program so_amstrong;
uses crt;
var i, so, p, j, b, h,  bx:integer;
    s:string;
begin
     clrscr;
     write('nhap day so bat ki: ');readln(so);
     p:=0; str(so,s); h:=so;
         repeat
               b:=so mod 10; so:=so div 10;
               bx:=b;
               for j:=2 to length(s) do
                   bx:=bx*b;
               p:=p+bx;
         until so=0;
         if p=h then writeln(h,'la so amstrong');
     readln;
end.

Số đối xứng - Lê Quang Tuấn

program chuoidoixung;
uses crt;
var st:string;
    i,l:integer;
    kt:boolean;
begin
     clrscr;
     write('Nhap chuoi bat ki: '); readln(st);
     kt:=true; l:=length(st);
     for i:=1 to length(st)div 2 do
         if st[i]<>st[l-i+1] then kt:=false;
     if kt then writeln('Doi xung!') else writeln('Khong doi xung!');
     readln
end.
program so_amstrong;
uses crt;
var i,so,p,b,j,bx:integer;
s:string;
begin

CLRSCR;

writeln ('tim so amstrong');
writeln ('nhap so bat ki');
...

for i:=1 to maxint do
begin
so:=i;
p:=0;
str (i,s);
repeat
b:=so mod 10; so:= so div 10;
bx:=b;
for j:=2 to length (s) do
bx:=bx*b;
p:=p+bx;
until so=0;
if p=i then write (i,'':3);
end;
readln;
end.

bài 1

program bai1;
var kt:boolean;
      so,i,x:integer;
begin
writeln('xac dinh so nguyen to');
writeln(' vd: 2,3,5,7,11,13,17,19...');
writeln(' nhap so bat ki:');
readln(so);
if so>=2 then
kt:=(true);
for i:=2 to so-1 do if so mod i = 0 then kt:=false;
if kt then writeln(' day la so nguyen to ', so)
else writeln('day khong phai la so nguyen to ', so);
readln;
end.


đề 2: tìm số Amstrong

program bai2;

var i,so,p,b,bx,j,h:integer;
     s:string;
begin
writeln('nhao so');
 readln(so);
h:=so; p:=0; str(so,s);
 repeat
 b:=so mod 10;
 so:=so div 10;
 bx:=b;
 for j:=2 to length(s) do
 bx:=bx*b;
 p:=p+bx;
 until so=0;
 if p=h then
 write(h,' la so amstrong ');
 readln;
 end.

Xét xem số nhập vào có phải là số Amstrong - Lê Quang Tuấn

program at;
uses crt;
var so,b,bx,p,j,h:integer;
    s:string;
begin
     clrscr;
     write('Nhap mot so bat ki: '); readln(so);
     p:=0; str(so,s); h:=so;
     repeat
           b:=so mod 10; so:=so div 10;
           bx:=b;
           for j:=2 to length(s) do
           bx:=bx*b;
           p:=p+bx;
     until so=0;
     if p=h then writeln(h,' la so Amstrong') else writeln(h,' khong phai la so Amstrong');
     readln
end.


Số Amstrong - Lê Quang Tuấn

program soamstrong;
uses crt;
var  i,so,p,b,j,bx:integer;
     s:string;
begin
     clrscr;
     for i:=1 to maxint do
         begin
         so:=i; p:=0; str(i,s);
         repeat
               b:=so mod 10;    so:=so div 10;
               bx:=b;
               for j:=2 to length(s) do
               bx:=bx*b;
               p:=p+bx;
         until so=0;
         if p=i then
         writeln(i,'':3);
         end;
     readln
end.

Số nguyên tố - Lê Quang Tuấn

program songuyento;
uses crt;
var kt:boolean;
    so,i,x:integer;
begin
     clrscr;
     write('Nhap vao mot so bat ki: '); readln(so);
     kt:=true;
     if so>=2 then
     begin
      for i:=2 to so-1 do
          begin
          if so mod i = 0 then kt:=false;
          end;
          if kt=true then writeln('La so nguyen to!') else writeln('Khong phai so nguyen to!');
     end
     else writeln('Khong phai so nguyen to!');
     readln
end.