Violet
Baigiang

Tìm kiếm theo tiêu đề

Tin tức cộng đồng

5 điều đơn giản cha mẹ nên làm mỗi ngày để con hạnh phúc hơn

Tìm kiếm hạnh phúc là một nhu cầu lớn và xuất hiện xuyên suốt cuộc đời mỗi con người. Tác giả người Mỹ Stephanie Harrison đã dành ra hơn 10 năm để nghiên cứu về cảm nhận hạnh phúc, bà đã hệ thống các kiến thức ấy trong cuốn New Happy. Bà Harrison khẳng định có những thói quen đơn...
Xem tiếp

Tin tức thư viện

Chức năng Dừng xem quảng cáo trên violet.vn

12087057 Kính chào các thầy, cô! Hiện tại, kinh phí duy trì hệ thống dựa chủ yếu vào việc đặt quảng cáo trên hệ thống. Tuy nhiên, đôi khi có gây một số trở ngại đối với thầy, cô khi truy cập. Vì vậy, để thuận tiện trong việc sử dụng thư viện hệ thống đã cung cấp chức năng...
Xem tiếp

Hỗ trợ kĩ thuật

  • (024) 62 930 536
  • 0919 124 899
  • hotro@violet.vn

Liên hệ quảng cáo

  • (024) 66 745 632
  • 096 181 2005
  • contact@bachkim.vn

Tìm kiếm Bài giảng

Bài 16. Ví dụ làm việc với tệp

Wait
  • Begin_button
  • Prev_button
  • Play_button
  • Stop_button
  • Next_button
  • End_button
  • 0 / 0
  • Loading_status
Tham khảo cùng nội dung: Bài giảng, Giáo án, E-learning, Bài mẫu, Sách giáo khoa, ...
Nhấn vào đây để tải về
Báo tài liệu có sai sót
Nhắn tin cho tác giả
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Nguyễn Ngọc Tuân
Ngày gửi: 16h:40' 07-12-2022
Dung lượng: 1.2 MB
Số lượt tải: 86
Số lượt thích: 0 người
Tiết 39+40: Bài 16
VÍ DỤ LÀM VIỆC VỚI TỆP
Bài 1: Viết chương trình đọc 3 số nguyên a,b,c từ tệp BAI1.INP, a#0.
Ghi ra tệp BAI1.OUT kết luận nghiệm của phương trình bậc 2 ax2+bx+c=0
+ Dữ liệu vào: Từ file văn bản BAI1.INP:
Dòng 1: ghi 3 số nguyên a,b,c
+ Dữ liệu ra: Ghi ra file văn bản BAI1.OUT
- Nếu phương trình vô nghiệm thì ghi : PTVN
- Nếu phương trình có 2 nghiệm thì ghi :
x1=…
x2=…
- Nếu phương trình có 1 nghiệm kép thì ghi :
Nghiệm kép x=…

Chương trình bài 1 :
f=open("BAI1.inp",'r', encoding='utf-8')
g=open("BAI1.out",'w', encoding='utf-8')
s=f.readline()
#p,q,r=map(int,s.split())
ds=s.split()
a=int(ds[0])
b=int(ds[1])
c=int(ds[2])
 
from math import *
delta=b*b-4*a*c

if delta<0:
g.write("PTVN")
elif delta==0:
x=-b/(2*a)
g.write("Nghiệm kép"+str(x))
else:
x1=(-b-sqrt(delta))/(2*a)
x2=-b/a-x1
g.write("x1="+str(x1)+"\n")
g.write("x2="+str(x2)+"\n")
 f.close()
g.close()

• Bài 2: Cho 3 số nguyên dương p, q, r
• Yêu cầu: Kiểm tra 3 số này, theo thứ tự có tạo thành một cấp số nhân
hay không. Nếu có thì in ra “YES”, ngược lại thì in ra “NO”
• Dữ liệu vào: Từ file văn bản BAI2.INP:
• Gồm một dòng chứa 3 số nguyên dương p, q, r (p, q ≤ 10 9). Các số viết
cách nhau một dấu cách
• Dữ liệu ra: Ghi ra file văn bản BAI2.OUT
• - Gồm 1 dòng ghi YES hoặc NO tương ứng với kết quả của bài toán dãy
số là cấp số nhân hay không là cấp số nhân

Chương trình bài 2:
f=open("BAI2.inp",'r', encoding='utf-8')
g=open("BAI2.out",'w', encoding='utf-8')
s=f.readline()
#p,q,r=map(int,s.split())
ds=s.split()
p=int(ds[0])
q=int(ds[1])
r=int(ds[2])
if q*q==p*r:
g.write("YES")
else:
g.write("NO")
f.close()
g.close()

Cách 1

Bài 3

Cho một số nguyên dương n
Yêu cầu: Phân tích n thành tích các thừa số nguyên tố. In ra
tích các thừa số nguyên tố theo thứ tự từ bé đến lớn
Dữ liệu vào: Từ file văn bản FPRIME.INP:
- Gồm một số nguyên dương n (2 ≤ n ≤ 106).
Dữ liệu ra: Ghi ra file văn bản FPRIME.OUT
- Gồm 1 dòng ghi ra số theo yêu cầu của đề bài, mỗi số
cách nhau một dấu cách

Bài 4
Cho một dãy số nguyên dương có n phần tử
Yêu cầu: Tìm ước chung lớn nhất của dãy số đó
Dữ liệu vào: Từ file văn bản GCDSEQ.INP gồm:
- Dòng 1: gồm một số nguyên dương n (n ≤ 1000).
- Dòng 2: gồm n số nguyên dương là các phần tử của dãy số. (Các
số có giá trị không vượt quá 106 và các số cách nhau 1 dấu cách)
Dữ liệu ra: Ghi ra file văn bản GCDSEQ.OUT
- Gồm 1 số nguyên duy nhất là ước chung lớn nhất của dãy số

Bài 4
Cho một dãy số nguyên A có n phần tử: A1, A2, …An.
Yêu cầu: Tìm dãy con liên tiếp đan dấu dài nhất
Dữ liệu vào: Từ file văn bản MIX.INP gồm:
- Dòng 1: gồm một số nguyên dương n (n ≤ 1000).
- Dòng 2: gồm n số nguyên Ai là các phần tử của dãy số. (1 ≤ i ≤ n, |Ai| ≤ 106).
Các số cách nhau bởi dấu cách
Dữ liệu ra: Ghi ra file văn bản MIX.OUT
- Dòng 1: gồm một số nguyên k là độ dài của dãy con dài nhất tìm được
- Dòng 2: gồm k số nguyên là dãy con thỏa mãn đề bài
Bài toán có thể có nhiều kết quả. In ra dãy con dài nhất đầu tiên khi xét từ trái
qua phải

Giải thích:

• i là biến chạy
• m lưu độ dài max của dãy đan dấu
• dau, cuoi: chỉ vào vị trí đầu và cuối của dãy đan dấu
Ví dụ:
N = 16
Dãy a = 1 -2 3 -4 -5 6 -7 8 -9 -8 -7 6 -5 4 -3 2
Độ dài dãy lớn nhất là: 6, từ vị trí 10 đến 15 (nhớ list đánh
số bắt đầu từ 0)
Dãy đan dấu lớn nhất là: -7 6 -5 4 -3 2

Bài 5
Cho 3 dãy số nguyên A, B, C mỗi dãy số gồm N phần tử
Yêu cầu: tìm cột được tạo ba phần tử tương ứng của 3 dãy số A i,
Bi, Ci có tổng lớn nhất
Dữ liệu vào: Từ file văn bản 3SEQ.INP gồm:
- Dòng 1: gồm một số nguyên dương n (n ≤ 1000).
- Ba dòng tiếp theo mỗi dòng gồm n số nguyên dương có giá trị
không quá 106 mô tả 3 dãy số đó. Các số cách nhau bởi dấu cách
Dữ liệu ra: Ghi ra file văn bản 3SEQ.OUT gồm 1 số nguyên duy
nhất là tổng của cột lớn nhất tìm được
468x90
 
Gửi ý kiến