multiplication table in matlab

조회 수: 120 (최근 30일)
mohamed
mohamed 2013년 3월 1일
답변: Akmal 2022년 6월 19일
I want to make the multiplication table using matlab ?
  댓글 수: 2
Azzi Abdelmalek
Azzi Abdelmalek 2013년 3월 1일
What does that mean?
leela krishna
leela krishna 2019년 6월 30일
the output is the multiplication table of any number
clc;
clear all;
n=input('Enter an integer:');
i=1;
while(i<=10)
fprintf('%d*%d=%d \n',n,i,n*i);
i=i+1;
end

댓글을 달려면 로그인하십시오.

채택된 답변

Azzi Abdelmalek
Azzi Abdelmalek 2013년 3월 1일
편집: Azzi Abdelmalek 2013년 3월 1일
x=(1:9)'
a=repmat(x,1,9)
b=a'
c=bsxfun(@times,x,x')
out=arrayfun(@(x,y,z) [num2str(x) 'x' num2str(y) '=' num2str(z)],a,b,c,'un',0)
  댓글 수: 3
mohamed
mohamed 2013년 3월 10일
편집: mohamed 2013년 3월 10일
i can't understand how arrayfun operates ?
Azzi Abdelmalek
Azzi Abdelmalek 2013년 3월 10일
편집: Azzi Abdelmalek 2013년 3월 10일
Look at this example:
a=[2 4 8]
%I want to do some operation to each number of a
out(1)=a(1)*100+cos(a(1))
out(2)=a(2)*100+cos(a(2))
out(3)=a(3)*100+cos(a(3))
%This can be done with arrayfun
out=arrayfun(@(x) x*100+cos(x),a)

댓글을 달려면 로그인하십시오.

추가 답변 (4개)

John Doe
John Doe 2013년 5월 22일
Another one-liner:
cumsum(meshgrid(1:10))

Teja Muppirala
Teja Muppirala 2013년 5월 23일
N = 10
(1:N)'*(1:N)
  댓글 수: 2
Morganne Durham
Morganne Durham 2018년 1월 22일
To make a matrix for a times table, you need to use a period before the *
(1:N)'.*(1:N)
Matt J
Matt J 2018년 1월 22일
편집: Matt J 2018년 1월 22일
No, you don't need .*
Also, the latter will only work in R2016b and higher. This thread was from back in 2013.

댓글을 달려면 로그인하십시오.


Matt J
Matt J 2013년 3월 1일
As an example, This will generate a times table for integers 1...10
bsxfun(@times, (1:10).',1:10)

Akmal
Akmal 2022년 6월 19일
...

카테고리

Help CenterFile Exchange에서 Matrices and Arrays에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by