What's wrong whith my schedule ?

1 Ansicht (letzte 30 Tage)
Ainadou Eude
Ainadou Eude am 23 Apr. 2021
Beantwortet: Les Beckham am 23 Apr. 2021
clear all;
close all;
clc;
E=0;
while E~=0,2
Io=45.4746;
I=(2*Io)+4;
E=(I-Io)/Io;
G=(Io+E);
Io=G;
end

Antworten (1)

Les Beckham
Les Beckham am 23 Apr. 2021
There are several things wrong with this code.
First
while E~=0,2
is not valid Matlab syntax. Replace the , with a . if you mean to test for 0.2 (i.e., 1/5).
Second, you are resetting Io at the beginning of each loop so you will get the same results on every pass through the loop. Move the line
Io=45.4746;
above the while loop.
Third, this algorithm (if you move the initialization of Io outside the loop), converges to 1.0 and will never reach 0.2. So, you have an infinite loop.

Tags

Produkte


Version

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by