một đẳng thức bên trong một hàm cốt truyện trong MATLAB có nghĩa là gì?


1

Vì vậy, tôi chỉ mới sử dụng MATLAB và đây có thể là một nghi ngờ rất ngớ ngẩn nhưng khi tạo tín hiệu cơ bản để xử lý tín hiệu tôi có điều này:

t = (-1: 0,01: 1) ';

xung lực = t == 0 ; cốt truyện (t, xung)

( từ: https://www.mathworks.com/help/signal/gs/impulse-step-and-ramp-fifts.html )

Vì vậy, tôi biết rằng sẽ vẽ một xung đơn vị nhưng tôi không thể thấy những gì t == 0 đang làm ở đó. AT time tức thì = 0 nó sẽ tăng lên 1, như mong đợi, nhưng tại sao? Cụ thể hơn, có ai có thể giải thích cho tôi "==" đang bảo MATLAB làm gì không?

Cảm ơn bạn rất nhiều

Câu trả lời:


0

Trong hầu hết các ngôn ngữ lập trình, bạn có thể lấy biểu thức phù hợp với câu lệnh "if" và sử dụng nó trong bất kỳ phép tính nào.

Trong hầu hết các trường hợp, khi biểu thức là "TRUE", kết quả sẽ cho giá trị "1".

Do đó "t == 0" ước tính thành "1" khi giá trị của "t" bằng 0 (0) ... trong mọi trường hợp khác, kết quả bằng không.

Điều này cho phép viết mã mà không có "nếu" -các hành vi giống như mã sử dụng một hoặc nhiều câu lệnh if.

ví dụ

$ trăn
Python 2.7.12 (mặc định, ngày 12 tháng 11 năm 2018, 14:36:49) 
[GCC 5.4.0 20160609] trên linux2
Nhập "trợ giúp", "bản quyền", "tín dụng" hoặc "giấy phép" để biết thêm thông tin.
>>> cho x trong xrange (0,20):
... in (x! = 10) * x,
... 
0 1 2 3 4 5 6 7 8 9 0 11 12 13 14 15 16 17 18 19
>>> cho x trong xrange (0,20):
... nếu x! = 10:
... in x,
... khác:
... in 0,
... 
0 1 2 3 4 5 6 7 8 9 0 11 12 13 14 15 16 17 18 19
>>> bỏ ()
$ 

Hannu trả lời tuyệt vời. Rất nhiều ân sủng!
Paul
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.