Ai giúp em với ạ.
Câu 1: cho tệp mang .txt có nội dung là 4 số nguyên như sau: 1 3 2 1. Hãy viết chương trình đọc dữ liệu từ tệp này. Tính tổng các giá trị đọc được. Ghi giá trị đọc được từ tệp mang.txt và tổng này vào tệp tong.txt
Câu 2: Viết chương trình thực hiện các công việc sau:
- đọc ba số a,b,c từ tệp ptb2.txt
- giải phương trình bậc 2 với hệ số a b c vừa đọc được
- ghi kết quả giải phương trình bậc 2 vào tệp ketqua.txt
Câu 5: Cho file dulieu.dat gồm hai dòng, mỗi dòng chứa hai số nguyên. ghi lên file tb.dat từ giá trị trung bình cộng của các số trên file dulieu.dat
Câu 1:
Program hotrotinhoc_hoc24;
const fi='mang.txt';
fo='tong.txt';
var f: text;
a,b,c,d: integer;
procedure ip;
begin
assign(f,fi);
reset(f);
read(f,a,b,c,d);
close(f);
end;
procedure out;
begin
assign(f,fo);
rewrite(f);
write(f,a+b+c+d);
close(f);
end;
begin
ip;
out;
end.
Câu 1:
const fi='mang.txt';
fo='tong.txt';
var f1,f2:text;
dem,i,t:integer;
a:array[1..4]of integer;
begin
assign(f1,fi); reset(f1);
assign(f2,fo); rewrite(f2);
dem:=0;
while not eoln(f1) do
begin
inc(dem);
read(f1,a[dem]);
end;
t:=0;
for i:=1 to dem do
t:=t+a[i];
writeln(f2,t);
close(f1);
close(f2);
end.
Câu 2:
const fi='ptb2.txt';
fo='ketqua.txt';
var f1,f2:text;
a,b,c,delta,x1,x2:real;
begin
assign(f1,fi); reset(f1);
assign(f2,fo); rewrite(f2);
readln(f1,a,b,c);
delta:=sqr(b)-4*a*c;
if delta>0 then
begin
x1:=(-b-sqrt(delta))/2*a;
writeln(f2,'x1=',x1:4:2);
x2:=(-b+sqrt(delta))/2*a;
writeln(f2,'x2=',x2:4:2);
end
else if delta=0 then writeln(f2,'x1=x2=',-b/(2*a):4:2)
else writeln(f2,'phuong trinh vo nghiem');
close(f1);
close(f2);
end.
Câu 5:
const fi='dulieu.dat';
fo='tb.dat';
var f1,f2:text;
a:array[1..4]of integer;
dem,i:integer;
tb:real;
begin
assign(f1,fi); reset(f1);
assign(f2,fo); rewrite(f2);
dem:=0;
while not eof(f1) do
begin
inc(dem);
read(f1,a[dem]);
end;
tb:=0;
for i:=1 to dem do
tb:=tb+a[i];
writeln(f2,tb/dem:4:2);
close(f1);
close(f2);
end.
Câu 2:
Program hotrotinhoc_hoc24;
const fi='ptb2.txt';
fo='ketqua.txt';
var f: text ;
a,b,c,denta: real;
procedure ip;
begin
assign(f,fi);
reset(f);
read(f,a,b,c);
close(f);
end;
procedure out;
begin
assign(f,fo);
rewrite(f);
denta:=sqr(b)-4*(a)*(c);
if denta<0 then write(f,'Phuong trinh vo nghiem');
if denta=0 then write(f,'Phuong trinh co nghiem kep ,gia tri x=',-(b/2*a));
if denta>0 then write(f,'Phuong trinh co hai nghiem phan biet,gia tri x1=',(-(b)+sqr(denta))/(2*a):1:2,' gia tri x2=',(-(b)-sqr(denta))/(2*a):1:2);
close(f);
end;
begin
ip;
out;
end.
Mn giúp mik bt Tin Học với ạ..! Mn lm đc bài nào thì làm nha ...!
Câu 1 (7,0 điểm): Số chính phương.
Cho trước số nguyên dương N (0< N≤ 106 ). Yêu cầu: Tìm số nguyên dương K nhỏ nhất sao cho tích của K và N là một số chính phương. Dữ liệu vào: File CP.INP chứa số N. Dữ liệu ra: File CP.OUT ghi số nguyên K tìm được.
Câu 2 (6,0 điểm): Dòng lớn nhất.
Cho một tệp tin gồm nhiều dòng. Trên mỗi dòng chứa một xâu kí tự chỉ gồm các kí tự chữ cái và chữ số, độ dài của mỗi xâu không quá 255 kí tự.
Yêu cầu: Đưa ra dòng có nhiều kí tự chữ cái nhất, nếu có nhiều dòng thỏa mãn thì đưa ra dòng đầu tiên có nhiều kí tự chữ cái nhất. Dữ liệu vào: File DLN.INP gồm:
+ Dòng đầu ghi số N là số lượng dòng chứa các xâu kí tự.
+ N dòng tiếp theo: mỗi dòng ghi một xâu kí tự. Dữ liệu ra: File DLN.OUT ghi ra dòng có nhiều kí tự chữ cái nhất, nếu có nhiều dòng thỏa mãn thì đưa ra dòng đầu tiên có nhiều kí tự chữ cái nhất.
Câu 3 (4,0 điểm): Dãy con đối xứng.
Một dãy số liên tiếp gọi là dãy đối xứng nếu đọc các số theo thứ tự từ trái sang phải cũng giống như khi đọc theo thứ tự từ phải sang trái. Cho dãy số A gồm N số nguyên dương: a1, a2,..., aN (1≤ N≤ 10000; 1≤ ai≤ 32000; 1≤ i≤ N)
Yêu cầu: Hãy tìm dãy con đối xứng dài nhất của dãy A. Nếu có nhiều dãy con thoả mãn thì lấy dãy con xuất hiện đầu tiên trong dãy A. Dữ liệu vào: File DX.INP gồm 2 dòng:
- Dòng 1: ghi số nguyên dương N.
- Dòng 2: ghi N số nguyên dương lần lượt là giá trị của các số trong dãy A, các số được ghi cách nhau ít nhất một dấu cách.
Dữ liệu ra: File DX.OUT ghi dãy tìm được trên cùng một dòng, các số được ghi cách nhau một dấu cách.
Câu 4 (3,0 điểm): Dãy nguyên tố.
Cho một dãy số B gồm n số nguyên dương (n ≤ 1000), mỗi phần tử trong dãy có giá trị không quá 30000. Yêu cầu:
+ Tìm dãy con dài nhất (liên tiếp hoặc không liên tiếp) các phần tử là những số nguyên tố có giá trị tăng dần của dãy B và thứ tự của các phần tử không đổi so với ban đầu. Ví dụ: Dãy 8 phần tử {4, 2, 5, 6, 3, 3, 7, 9} có dãy con nguyên tố tăng dài nhất là {2, 5, 7}.
+ Nếu có nhiều dãy con thoả mãn thì lấy dãy con xuất hiện đầu tiên trong dãy B. Dữ liệu vào: File NT.INP gồm 2 dòng:
- Dòng 1: Ghi số nguyên dương n.
- Dòng 2: Ghi n số nguyên dương, các số được ghi cách nhau một dấu cách. Dữ liệu ra: File NT.OUT ghi dãy con tìm được trên cùng 1 dòng, giữa 2 phần tử liền kề trong dãy có một dấu cách.
const fo='int.txt'
fo='out.txt'
var f1,f2:text;
m,n:integer;
begin
assign(f1,fi); reset(f1);
assign(f2,fo); rewrite(f2);
readln(f1,m);
readln(f1,n);
writeln(f2,m+n);
close(f1);
close(f2);
end.
Viết chương trình đọc 2 số thực a, b từ tệp 'DULIEU.DAT' ( Tệp 'DULIEU.DAT' có nhiều dòng dữ liệu mỗi dòng chứa hai số thực). tính chu vi P và diện tích S hình chữ nhật và xuất kết quả ra màn hình. ( yêu cầu viết chương trình đọc một dòng dữ liệu đầu tiên trong tệp 'DULIEU.DAT'
uses crt;
const fi='dulieu.dat'
var f1:text;
a,b,p,s:array[1..100]of real;
i,n:integer;
begin
clrscr;
assign(f1,fi); reset(f1);
n:=0;
while not eof(f1) do
begin
n:=n+1;
readln(a[n],b[n]);
end;
for i:=1 to n do
begin
p[i]:=(a[i]+b[i])/2;
s[i]:=a[i]*b[i];
end;
for i:=1 to n do
writeln(p[i]:4:2,' ',s[i]:4:2);
close(f1);
readln;
end.
Bài. Tính trung bình cộng các phần tử trong dãy Cho dãy số nguyên gồm N phần tử a1, a2, …, aN
Yêu cầu: Tính trung cộng các phần tử trong dãy. Dữ liệu vào: File văn bản AVG.INP gồm + Dòng đầu ghi số N ; + Dòng thứ hai một dãy số nguyên a1, a2, …, aN (mỗi số cách nhau ít nhất một dấu cách). Dữ liệu ra: Ghi ra file văn bản AVG.OUT + Một số duy nhất là trung bình cộng các phần tử trong dãy(làm tròn một chữ số thập phân).
#include <bits/stdc++.h>
using namespace std;
long long a[10000],i,n,t;
int main()
{
freopen("avg.inp","r",stdin);
freopen("avg.out","w",stdout);
cin>>n;
for (i=1; i<=n; i++) cin>>a[i];
t=0;
for (i=1; i<=n; i++) t+=a[i];
cout<<fixed<<setprecision(1)<<(t*1.0)/(n*1.0);
return 0;
}
tìm các số nguyên tố trong dãy số nguyên có n phấn tử a1, a2...an. dữ liệu vào đọc từ file nguyên tố.INP, gồm 2 dòng:
- dòng đầu chứa số nguyên dương n,n<= 250.
-dòng 2 chứa các phần tử của dãy số gồm a1, a2...an.
-dữ liệu ra ghi vào tệp nguyên tố .OUTP ,các phần tử là số nguyên tố nằm trên 1 dòng
giúp mình với ạ, mình cảm ơn!!
#include <bits/stdc++.h>
using namespace std;
long long a[1000],i,n,j;
bool kt;
int main()
{
freopen("nguyento.inp","r",stdin);
freopen("nguyento.out","w",stdout);
cin>>n;
for (i=1; i<=n; i++) cin>>a[i];
for (i=1; i<=n; i++)
if (a[i]>1)
{
kt=true;
for (j=2; j*j<=a[i]; j++)
if (a[i]%j==0) kt=false;
if (kt==true) cout<<a[i]<<" ";
}
return 0;
}
Pascal nhập xuất file:
Cho trước 2 dãy số nguyên. Hãy tìm các số thuộc dãy thứ nhất mà không thuộc dãy thứ 2.
Dữ liệu nhập: Cho trong file DAYSO.INP gồm 4 dòng:
-Dòng đầu chứa số nguyên dương M(1<=M<=100)
-Dòng thứ hai chứa M số nguyên của dãy thứ nhất
-Dòng thứ ba chứa số nguyên dương N(1<=n<=100)
-Dòng thứ tư chứa N số nguyên của dãy thứ 2
Dữ liệu ra: cho trong file DAYSO.OUT chứa các số thuộc dãy thứ nhất mà không thuộc dãy thứ 2 hoặc thông báo"no solution" nếu không tìm thấy Giúp mình nhé sắp thi rồi!!
Cho số nguyên dương N (0<N<109
).
Lập trình tách số N thành tổng 2 số nguyên tố sao cho tích của chúng là lớn
nhất.
- File bài làm: TachSo.Pas
- File input: TachSo.inp
o Gồm 1 dòng:
Dòng 1 ghi số N
- File Output: TachSo.out
o Gồm 1 dòng:
Dòng 1: Ghi 2 số thỏa mãn, mỗi số cách nhau 1 khoảng
trắng.
Bài 7: Viết chương trình đọc từ file INP một dãy số nguyên A gồm có N phần tử (N<=10000). Ghi vào file OUT: dòng 1 ghi dãy số vừa nhập, dòng 2 ghi tổng của dãy số, dòng 3 ghi đếm các số dương có trong dãy và dòng 4 ghi tính tổng của các số dương đó.
BAI7.INP | BAI7.OUT |
6 10 -5 6 -7 -9 4
| 10 -5 6 -7 -9 4 -1 3 20 |
mình ghi dư cái số 4 bên phần BAI7.INP nha mn