Форум программистов, компьютерный форум, киберфорум
Matlab
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 27.02.2017
Сообщений: 5
1

Использование цикла while

04.03.2017, 16:59. Показов 3759. Ответов 10
Метки нет (Все метки)

Дано натуральное число. Определить номер цифры 8 в нем, считая от
конца числа. Если такой цифры нет, ответом должно быть число 0, если таких
цифр в числе несколько — должен быть определен номер самой левой из них.
Программу я написала, но нужно ввести цикл while. Помогите пожалуйста
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
clc;
clear all;
close all;
 
b = randint(1,10,[5, 8]);
c = b (end:-1:1)
[i,j] = find(c==8);[i, j]
if j>=1
    a = j(1,1);
fprintf('a %g\n', a)
else disp(0)
end
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.03.2017, 16:59
Ответы с готовыми решениями:

Использование цикла FOR..
Помогите с заданиями уже неделю мучаюсь над ними, чуть обьяснят материал и делай как хочешь дальше...

использование цикла
Помогите с алгоритмом, плз Используя цикл, написать программу, обеспечивающую ввод n...

Использование цикла
Используя сначала цикл с условием, а затем - цикл с переменной, напишите программу, которая выводит...

Использование цикла for
Добрый день. Подскажите как мне хорошо разобраться с цыком for.:help: Я понимаю самое элементарное,...

__________________
10
164 / 144 / 49
Регистрация: 29.10.2014
Сообщений: 737
04.03.2017, 20:20 2
while <условие>
<операторы>
end

Здесь <условие> означает условное выражение подобное тому, которое применяется в операторе if, и цикл while работает до тех пор, пока это условие истинно.
Следует обратить внимание на то, что если условие будет ложным до начала выполнения цикла, то операторы, входящие в цикл, не будут выполнены ни разу.
Matlab M
1
2
3
4
5
6
7
8
9
10
11
r = randi([5,8],1,10);
c = r(end:-1:1)
j=1;
while(j<=length(c))
     if (c(j)~=8)
         c(j)=0;
     else
         position(j)=j;
     end
    j=j+1;
end
Добавлено через 6 минут
Не понял зачем с конца это делать?
0
0 / 0 / 0
Регистрация: 27.02.2017
Сообщений: 5
05.03.2017, 19:21  [ТС] 3
условие такое, только почему то этот код не работает
0
164 / 144 / 49
Регистрация: 29.10.2014
Сообщений: 737
05.03.2017, 20:12 4
У меня Matlab2016b попробуйте поменять:
r = randi([5,8],1,10); на
r = randint(1,10,[5, 8]);
0
0 / 0 / 0
Регистрация: 27.02.2017
Сообщений: 5
05.03.2017, 21:47  [ТС] 5
это первое что я сделала)
0
Модератор
1227 / 1116 / 338
Регистрация: 13.09.2015
Сообщений: 3,936
06.03.2017, 07:32 6
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
a=-1;
while a<0 | fix(a)~=a
   a=input('Введите натуральное число: ');
end
n=fix(log10(a))+2;
A=repmat(a,1,n);
D=10.^(0:n-1);
B=mod(A,D);
C=fix(B(2:end)./D(1:end-1));
s=1;
while s<n
   if C(s)==8
      k=s;
   end
   s=s+1;
end
k=n-k;
fprintf('Порядковый номер левой цифры 8: k=%d\n',k)
2
164 / 144 / 49
Регистрация: 29.10.2014
Сообщений: 737
06.03.2017, 08:26 7
А можно увидить ошибку, которую выводит Matlab?
0
0 / 0 / 0
Регистрация: 27.02.2017
Сообщений: 5
09.03.2017, 21:25  [ТС] 8
тот код вообще ничего не выводил
0
164 / 144 / 49
Регистрация: 29.10.2014
Сообщений: 737
10.03.2017, 20:10 9
Непонятно конечно, вот результат моего расчета
0
Миниатюры
Использование цикла while  
0 / 0 / 0
Регистрация: 27.02.2017
Сообщений: 5
19.03.2017, 20:27  [ТС] 10
он должен ведь номер выводить цифры 8
0
164 / 144 / 49
Регистрация: 29.10.2014
Сообщений: 737
20.03.2017, 10:11 11
А position разве не показывает?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.03.2017, 10:11

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Использование цикла while
Доброго времени суток! Подскажите пожалуйста можно ли организовать последовательный переход от...

Использование цикла
Что-то не могу врубиться как сделать проверку на все числа от 0 до 9, понятно, что можно на каждую...

Использование функции цикла
#include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; int main() { ...

использование цикла Foreach
Добрый день дорогие форумчане, у меня такой вопрос, я хочу использовать цикл Foreach в свои...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.