Để mô tả các thao tác trong thuật toán, mỗi ngôn ngữ lập trình đều sử dụng một số khái niệm cơ bản: phép toán, biểu thức, gán giá trị. Dưới đây sẽ xét các khái niệm đó trong Pascal. Mời các em cùng theo dõi nội dung chi tiết của bài học.
Phép toán | Trong Toán học | Trong Pascal |
Các phép toán số học với số nguyên | + (cộng), - (trừ), . (nhân), div (chia nguyên), mod (lấy phần div) | +, -,*, div, mod |
Các phép toán số học với số thực | + (cộng). - (trừ), . (nhân),: (chia) | +,-, *,/ |
Các phép toán quan hệ | < (nhỏ hơn), < (nhỏ hơn hoặc bằng), > (lớn hơn hoặc bằng). = (bằng), * (khác) | <, <=, >=, =, < > |
Các phép toán logic | -1 (phủ định), \(\vee\) (hoặc), \(\wedge\) (và) | not, or, and |
Bảng 1. Kí hiệu các phép toán trong Toán học và trong Pascal
Chú ý 1:
Trong lập trình, biểu thức số học là một biến kiểu số hoặc một hằng số hoặc các biến kiểu số và các hằng số liên kết với nhau bởi một số hữu hạn phép toán số học, các dấu ngoặc tròn (và) tạo thành một biểu thức có dạng tương tự như cách viết trong toán học với những quy tắc sau:
Chú ý 2:
Hàm | Biểu diễn Toán học | Biểu diễn trong Pascal | Kiểu đối số | Kết quả |
Bình phương | x2 | sqr(x) | Thực hoặc nguyên | Theo kiểu của đối số |
Căn bậc hai | \(\sqrt x\) | Sqrt(x) | Thực hoặc nguyên | Thực |
Giá trị tuyệt đối | |x| | Abs(x) | Thực | Theo kiểu của đối số |
Lôgarit tự nhiên | lnx | ln(x) | Thực | Thực |
Lũy thừa của số e | ex | Exp(x) | Thực | Thực |
Sin | Sinx | Sin(x) | Thực | Thực |
Cos | Cosx | Cos(x) | Thực | Thực |
Bảng 2. Một số hàm chuẩn thường dùng
A | 0 | 1 | ||
Not A | 1 | 0 | ||
A | 0 | 0 | 1 | 1 |
B | 0 | 1 | 0 | 1 |
A and B | 0 | 0 | 0 | 1 |
A not B | 1 | 1 | 1 | 0 |
Bảng 3. Bảng giá trị phép toán logic
Ví dụ 1:
Một số điểm chú ý khi sử dụng lệnh gán:
Biểu diễn biểu thức sau sang ngôn ngữ lập trình Pascal:
a. 2a + 3b +c;
b. \(\frac{x+y}{1-\frac{2}{z}}+\frac{x^2}{2z}\)
c. \(\frac{-b+\sqrt{b^2-4ac}}{2a}\)
Gợi ý làm bài:
a. 2*a + 3*b + c;
b. ((x+y)/(1-(2/z)))+(x*x/(2*z));
c. (-b+sqrt(b*b-4*a*c))/(2*a).
Ví dụ biểu thức quan hệ và biểu thức logic.
Gợi ý làm bài:
Biểu thức quan hệ:
Biểu thức logic:
Ví dụ câu lệnh gán.
Gợi ý làm bài:
Sau khi học xong Bài 6: Phép toán, biểu thức, câu lệnh gán, các em cần nắm vững các nội dung trọng tâm:
Các em có thể hệ thống lại nội dung kiến thức đã học được thông qua bài kiểm tra Trắc nghiệm Tin học 11 Bài 6 cực hay có đáp án và lời giải chi tiết.
Chọn cách biểu diễn đúng của biểu thức toán học sau sang Pascal?
\((1+z)\frac{x+\frac{y}{z}}{a-\frac{1}{1+x^3}}\)
Chọn cách biểu diễn đúng của biểu thức trong Pascal sau về biểu thức trong toán học?
ABS(x – y)/(x*x + SQR(y) +1)
Câu 3-5: Mời các em đăng nhập xem tiếp nội dung và thi thử Online để củng cố kiến thức về bài học này nhé!
Trong quá trình học tập nếu có thắc mắc hay cần trợ giúp gì thì các em hãy comment ở mục Hỏi đáp, Cộng đồng Tin học DapAnHay sẽ hỗ trợ cho các em một cách nhanh chóng!
Chúc các em học tập tốt và luôn đạt thành tích cao trong học tập!
-- Mod Tin Học 11 DapAnHay
Chọn cách biểu diễn đúng của biểu thức toán học sau sang Pascal?
\((1+z)\frac{x+\frac{y}{z}}{a-\frac{1}{1+x^3}}\)
Chọn cách biểu diễn đúng của biểu thức trong Pascal sau về biểu thức trong toán học?
ABS(x – y)/(x*x + SQR(y) +1)
Biểu thức nào sau kiểm tra "n là một số nguyên dương chẵn"?
Cho biểu thức sau:
(a mod 3 = 0) and (a mod 4 = 0)
Số a nhận giá trị nào sau đây để biểu thức cho kết quả là TRUE?
Biểu thức Toán học \(\frac{x+y}{x-z}\) khi chuyển sang ngôn ngữ lập trình Pascal sẽ có dạng:
Họ và tên
Tiêu đề câu hỏi
Nội dung câu hỏi
Hãy chuyển các biểu thức trong Python dưới đây sang biểu thức toán học tương ứng
a). a/b*2
b). a*b*c/2
c). 1/a*b/c
d). b/(a*a+b**0.5
Câu trả lời của bạn
viết chương trình nhập vào điểm toán văn anh và đối tượng chính sách thuộc nhóm từ 1 đến 9. nếu đối tượng từ 1 đến 3 thì được cộng thêm 1 điểm, đối tượng từ 4 đến 6 thì được cộng thêm 0.5 điểm còn lại không được cộng. nhập vào điểm trúng tuyển. sau đó in ra kết quả tổng điểm, và trúng tuyển hay không trúng tuyển.
1) Xác định bài toán :
2) Tổ chức dữ liệu:
3) Chương trình :
Mn giúp em với ạ :(( em sắp thii rồi ạ
Câu trả lời của bạn
Câu trả lời của bạn
#include <bits/stdc++.h>
using namespace std;
int main() {
double a, b, c, S;
cin >> a >> b;
S=(1.0/2)*a*b;
c=sqrt(a*a+b*b);
cout << fixed << setprecision(2) << "Dien tich la " << (double)S << "\nCanh huyen la " << (double)c << endl;
return 0;
}
- Thiết kế cấu trúc dữ liệu
- Thiết kế giải thuật
- Sử dụng ngôn ngữ C/C++ cài đặt thuật toán trên
Câu trả lời của bạn
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a, b, c, d, maxabcd;
cin >> a >> b >> c >> d;
maxabcd=a;
if(maxabcd<b) maxabcd=b;
if(maxabcd<c) maxabcd=c;
if(maxabcd<d) maxabcd=d;
cout << "Max=" << maxabcd << endl;
return 0;
}
Câu trả lời của bạn
22 div 3+26 mod 3-3=7+8-3=12
Câu trả lời của bạn
(a+b>c) and (a+c>b) and (b+c>a) and (a>0) and (b>0) and (c>0)
Câu trả lời của bạn
#include <bits/stdc++.h>
using namespace std;
double xa,ya,xb,yb,xc,yc,ab,ac,bc,am;
int main()
{
cin>>xa>>ya>>xb>>yb>>xc>>yc;
ab=sqrt(pow(xa-xb,2)+pow(ya-yb,2));
ac=sqrt(pow(xa-xc,2)+pow(ya-yc,2));
bc=sqrt(pow(xb-xc,2)+pow(yb-yc,2));
cout<<"AB="<<fixed<<setprecision(2)<<ab<<endl;
cout<<"AC="<<fixed<<setprecision(2)<<ac<<endl;
cout<<"BC="<<fixed<<setprecision(2)<<bc<<endl;
am=((2*(ac*ac+bc*bc)-ab*ab)/4);
cout<<"AM="<<fixed<<setprecision(2)<<sqrt(am)<<endl;
return 0;
}
Câu trả lời của bạn
uses crt;
var xa,ya,xb,yb,xc,yc,p,s,ab,bc,ac:real;
begin
clrscr;
readln(xa,ya,xb,yb,xc,yc);
ab:=sqrt(sqr(xa-xb)+sqr(ya-yb));
ac:=sqrt(sqr(xa-xc)+sqr(ya-yc));
bc:=sqrt(sqr(xb-xc)+sqr(yb-yc));
p:=(ab+bc+ac)/2;
s:=sqrt(p*(p-ab)*(p-ac)*(p-bc));
writeln('Chu vi la: ',p*2:4:2);
writeln('Dien tich la: ',s:4:2);
readln;
end.
Câu trả lời của bạn
program baitap;
uses crt;
var cv,s,a,b:integer;
begin
clrscr;
a := 12;
b := 8;
cv := (a+b)*2;
s := a*b;
writeln('Chu vi HCN = ',cv);
writeln('Dien tich HCN = ',s);
readln;
Câu trả lời của bạn
#include <bits/stdc++.h>
using namespace std;
double a,b;
int main()
{
cin>>a>>b;
cout<<fixed<<setprecision(2)<<a*b;
return 0;
}
Câu trả lời của bạn
#include <bits/stdc++.h>
using namespace std;
double a,b,c,p,s;
int main()
{
cin>>a>>b>>c;
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
cout<<fixed<<setprecision(2)<<s;
return 0;
}
Câu trả lời của bạn
+ Các phép toán số học với số nguyên: +, -,*, div, mod
+ Các phép toán số học với số thực: +,-, *,/
+ Các phép toán quan hệ: <, <=, >=, =, < >
+ Các phép toán logic: not, or, and
- Tính tổng bình phương các số là ước của 25 thuộc[m;n]
- In ra màn hình các chữ số là tích của mnk
Câu trả lời của bạn
uses crt;
var m,n,k,s,i,t:integer;
begin
clrscr;
repeat
write('Nhap m='); readln(m);
write('Nhap n='); readln(n);
write('Nhap k='); readln(k);
until (m<n) and (n<k) and (m>0) and (n>0) and (k>0);
s:=m*n*k;
if s>=10 then writeln('Tich la so co 2 chu so')
else writeln('Tich khong la so co 2 chu so');
t:=0;
for i:=m to n do
if 25 mod i=0 then t:=t+sqr(i);
writeln('Tong binh phuong cac so la uoc cua 25 thuoc [',m,';',n,'] la: ',t);
readln;
end.
- Nhập 3 số nguyên dương m,n,k(m<n<k) kiểm tea xem tích mnk có tận cùng là 5 không?
- Đưa ra các số chia 3 dư 2 thuộc (m;n)
Câu trả lời của bạn
uses crt;
var m,n,k,i,s:integer;
begin
clrscr;
repeat
write('Nhap m='); readln(m);
write('Nhap n='); readln(n);
write('Nhap k='); readln(k);
until (m<n) and (n<k) and (m>0) and (n>0) and (k>0);
s:=m*n*k;
if s mod 10=5 then writeln('Tich cua ',m,'*',n,'*',k,' co tan cung la 5')
else writeln('Tich cua ',m,'*',n,'*',k,' khong co tan cung la 5');
for i:=m to n do
if i mod 3=2 then write(i:4);
readln;
end.
An >=100. Với A là một số nguyên được nhập từ bàn phím.
Câu trả lời của bạn
uses crt;
var a,n:integer;
{--------------chuong-trinh-con-luy-thua----------------}
function lt(x,y:integer):longint;
var luythua:
longint;
i:integer;
begin
luythua:=1;
for i:=1
to y do
luythua:=luythua*x;
lt:=luythua;
end;
{--------------chuong-trinh-chinh-------------------}
begin
clrscr;
write('Nhap a=');
readln(a);
n:=0;
repeat
n:=n+1;
until lt(a,n)>=100;
writeln(n);
readln;
end.
Câu trả lời của bạn
uses crt;
var dem,n,m,t:integer;
begin
clrscr;
write('Nhap n='); readln(n);
write('Nhap m='); readln(m);
t:=m+n;
writeln('Trung binh cong cua chung la: ',t/2:4:2);
dem:=0;
if n mod m=0 then inc(dem);
if m mod n=0 then inc(dem);
writeln('Co ',dem,' so la boi so cua so kia');
readln;
end.
Câu trả lời của bạn
uses crt;
var n,i:integer;
s:real;
begin
clrscr;
n:=1;
s:=1;
while 1/n>1/100 do
begin
n:=n+1;
s:=s+1/n;
end;
writeln(s:4:2);
readln;
end.
X3 <= 3000.
Câu trả lời của bạn
uses crt;
var x:integer;
begin
clrscr;
x:=0;
while x*x*x<=3000do
begin
write(x:4);
x:=x+1;
end;
readln;
end.
Câu trả lời của bạn
uses crt;
var n,i,d,x,j,tam:longint;
a:array[1..255]of longint;
st:string;
begin
clrscr;
write('Nhap n='); readln(n);
str(n,st);
d:=length(st);
for i:=1 to d do
val(st[i],a[i],x);
for i:=1 to d-1 do
for j:=i+1 to d do
if a[i]<a[j] then
begin
tam:=a[i];
a[i]:=a[j];
a[j]:=tam;
end;
for i:=1 to d do
write(a[i]);
readln;
end.
Câu trả lời của bạn
uses crt;
var a:array[1..100]of integer;
i,n,t:integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
t:=0;
for i:=1 to n do
if (a[i] mod 2=0) and (a[i] mod 3=0) then t:=t+a[i];
writeln(t);
readln;
end.
0 Bình luận
Để lại bình luận
Địa chỉ email của hạn sẽ không được công bố. Các trường bắt buộc được đánh dấu *