Em hãy mô tả thuật toán bám tường bên trái để tìm đường thoát khỏi mê cung.
Làm việc cùng với bạn, thực hiện ghép nổi mỗi mô tả thuật toán ở cột bên trái với đoạn chương trình Scratch tương ứng ở cột bên phải.
Bảng 6. Mô tả thuật toán và đoạn chương trình Scratch tương ứng
Xét bài toán sau, em hãy mô tả thuật toán của em để giải quyết bài toán này bằng hai trong những cách sau: ngôn ngữ tự nhiên, sơ đồ khối.
Bài toán: Một cửa hàng cung cấp dịch vụ bán hàng thanh toán tại nhà. Khách hàng chỉ cần đăng ký số lượng mặt hàng cần mua, nhân viên cửa hàng sẽ giao hàng và nhận tiền thanh toán tại nhà của khách hàng. Tiền khách hàng phải thanh toán bao gồm tiền mua hàng (tiền mua hàng = số lượng x đơn giá) và phí dịch vụ. Nếu tiền mua hàng từ 500.000 đồng trở lên thì khách hàng được hưởng ưu đãi không phải trả thêm phí dịch vụ, còn không thì khách hàng phải trả thêm phí dịch vụ bằng 5% của số tiền mua hàng. Biết số lượng hàng là N, đơn giá là d (nghìn đồng/ 1 đơn vị hàng). Hãy tính số tiền phải thanh toán.
Input: số lượng hàng N, đơn giá d, phí dịch vụ
Output: Số tiền phải thanh toán
Mô tả thuật toán bằng ngôn ngữ tự nhiên:
Bước 1: Nhập số lượng hàng N và đơn giá d.Bước 2: Tính số tiền mua hàng = số lượng hàng x đơn giá.Bước 3: Nếu số tiền mua hàng >= 500.000 thì số tiền thanh toán = số tiền mua hàng. Nếu ngược lại thì số tiền thanh toán = số tiền mua hàng x 105%Mô tả thuật toán bằng sơ đồ khối:Dựa trên mô tả thuật toán tìm kiếm nhị phân cho ở Hình 3, em hãy nêu tóm tắt ý tưởng của thuật toán này
Ý tưởng: cho trước một dãy số và tìm số x nằm ở vị trí nào trong dãy số đó.
Em hãy mô tả thuật toán để giải bài toán tính tổng hai số a và b bằng ngôn ngữ tự nhiên
Bài 1:Xác định bài toán và mô tả thuật toán tìm các ước của 1 số nguyên
dương N.
Bài 2: Xác định bài toán và mô tả thuật toán tìm bội chung nhỏ nhất của 2 số
nguyên dương a và b ( BCNN(a,b)).
Bài 3: Hãy chỉ ra Input và Output, mô tả thuật toán của bài toán sau: Tính
tổng các số chẵn trong dãy số nguyên A = {a1, a2, …, an} cho trước
Giúp em với ạ
Câu 1 :
Tham khảo
Y tưởng : xét từng số hạng trong dãy nếu số hạng > 0 thì xếp vào một biến tổng rồi chia cho số hàng đã xếp được
Input : Dãy A gồm N số nguyên a1....aN;
Output : Trung bình cộng của các số dương;
B1 : Nhập N số nguyên a1.... aN;
B2 : TB <--- 0, dem <---- 0, i <---- 1, Tong <--- 0;
B3 : Nếu a[i] > 0 thì Tong <--- TB + a[i];
B4 : dem <--- dem + 1;
B5 : Nếu i > N thì đưa ra màn hình kết quả TB = Tong/Dem rồi kết thúc chương trình;
B 6 : i <--- i + 1 rồi quay lại B3;
Câu 2 :
Tham khảo
Ta nhận thấy rằng, bội số chung nhỏ nhất của hai số nguyên dương a, b có thể được tính theo công thức:
ab/d
trong đó d là ước chung lớn nhất của a và b.
Bởi vậy:
Nên viết hàm để tính bội chung nhỏ nhất của hai số nguyên dương vì chương trình con cần trả ra một giá trị;
- Hàm tính bội chung nhỏ nhất của hai số nguyên dương a, b cần sử dụng hàm tính ước chung lớn nhất của a và b.
- Hàm tính ước chung lớn nhất của hai số nguyên dương a, b:
function ucln (a, b: integer): integer;
var r: integer;
begin
while b>0 do begin
r: = a mod b ,a : = b ; b:= r; end; ucln:= a; and;
- Hàm tính bội chung nhỏ nhất của hai số nguyên dương a, b:
ADVERTISING Video Player is loading.This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.lunction bcnn(a, b: integer): integer;
begin
bcnn:= a*b div ucln(a, b);
end;
Khi đó, chương trình con tính bội số chung nhỏ nhất của hai số nguyên dương a, b như sau:
program bai4_chuong6;
use crt ;
vai
X y: integer;
function ucln(a, b: integer): integer;
var r: integer;
begin
while b>0 do begin
r:= a mod b; a: = b ,b:= r;
end; ucln:= a;
end;
txnction bcnn(a, b: integer): integer;
begin
bcnn:= a*b div ucln(a, b);
end;
Begin
clrscr;
writeln('Nhap vao hai so can tim BCNN');
write ('x=') , readln(x); write ('y=') , readln(y);
writeln('bcnn cua hai so',x:4,'va',y:4,'la',bcnn(a,b)
readln
End.
Câu 3 : chịu
Hãy mô tả thuật toán tìm giá trị lớn nhất của một dãy số nguyên
1. Xác định Input, Output
2. Mô tả thuật toán bằng cách liệt kê hoặc sơ đồ khối
3. Mô phỏng thuật toán với bộ Input cụ thể
1: Input: Dãy số nguyên
Output: Số lớn nhất
Hãy mô tả thuật toán tìm giá trị lớn nhất của một dãy số nguyên
1. Xác định Input, Output
2. Mô tả thuật toán bằng cách liệt kê hoặc sơ đồ khối
3. Mô phỏng thuật toán với bộ Input cụ thể
1
input: n và dãy a1,a2,a3,...,an
output: số lớn nhất trong dãy a1,a2,...,an
2.
b1: nhập n và gãy a1,a2,...,an
b2: a1<-max; i<-2;
b3: nếu i>n thì kết thúc và in kết quả ra màn hình
b4: nếu ai>max thì max:=a[i];
b5: i<-i+1 quay lại b3
#include <bits/stdc++.h>
using namespace std;
long long n,i,x,dem;
int main()
{
cin>>n;
dem=0;
for (i=1; i<=n; i++)
{
cin>>x;
if (x%2==0) dem++;
}
cout<<dem;
return 0;
}
Em hãy quan sát sơ đồ khối ở hình sau và cho biết sơ đồ khối mô tả thuật toán gì? Xác định đầu vào và đầu ra của thuật toán. Mô tả lại thuật toán dưới dạng liệt kê.
tham khảo:
- Sơ đồ khối mô tả thuật toán tính tổng của hai số a và b.
- Đầu vào: hai số a và b.
Đầu ra: tổng hai số a và b.
- Mô tả thuật toán theo cách liệt kê là:
+ Nhập giá trị a, giá trị b
+ Tính Tổng ← a + b.
In ra màn hình giá trị Tổng.
THAM KHẢO :
- Sơ đồ khối mô tả thuật toán tính tổng của hai số a và b.
- Đầu vào: hai số a và b.
Đầu ra: tổng hai số a và b.
- Mô tả thuật toán theo cách liệt kê là:
+ Nhập giá trị a, giá trị b.
+ Tính Tổng: a + b.
+ In ra màn hình giá trị Tổng.
tham khảo:
- Sơ đồ khối mô tả thuật toán tính tổng của hai số a và b.
- Đầu vào: hai số a và b.
Đầu ra: tổng hai số a và b.
- Mô tả thuật toán theo cách liệt kê là:
+ Nhập giá trị a, giá trị b
+ Tính Tổng ← a + b.
In ra màn hình giá trị Tổng
Em hãy điền các bước vào sơ đồ cấu trúc rẽ nhánh dạng đủ bên dưới để mô tả thuật toán thực hiện hoạt động ''Kiểm tra số a là số lẻ hay số chẳn''
Giúp mik với các bạn
uses crt;
var a:integer;
begin
clrscr;
readln(a);
if a mod 2=0 then write(a,' la so chan')
else write(a,' la so le');
readln;
end.
Làm việc cùng với bạn, thực hiện ghép nối mỗi mô tả thuật toán ở cột bên trái với một đoạn chương trình Scratch tương ứng ở cột bên phải trong Bảng 3.