Re: Very simple question
- To: mathgroup at smc.vnet.net
- Subject: [mg132558] Re: Very simple question
- From: Alexei Boulbitch <Alexei.Boulbitch at iee.lu>
- Date: Fri, 11 Apr 2014 02:11:09 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: l-mathgroup@wolfram.com
- Delivered-to: mathgroup-outx@smc.vnet.net
- Delivered-to: mathgroup-newsendx@smc.vnet.net
I've been away from Mathematica for about 7 years.
Can anyone tell me why function fx gives an error message but fy does
not? They look functionally the same to me.
Please send me an email about this.
fx[ptl_] := Module[{x1, y1, x2, y2, x3, y3},
Print[pt1];
x1 = pt1[[1, 1]]; y1 = pt1[[1, 2]];
x2 = pt2[[2, 1]]; y2 = pt2[[2, 2]];
x3 = pt3[[3, 1]]; y3 = pt3[[3, 2]];
Print[x1, y1, x2, y2, x3, y3];
]
fx[{{1, 2}, {3, 5}, {4, 7}}]
fy[pt1_] := Module[{zz, x1, y1, x2, y2, x3, y3},
zz = pt1;
Print[zz];
x1 = zz[[1, 1]]; y1 = zz[[1, 2]];
x2 = zz[[2, 1]]; y2 = zz[[2, 2]];
x3 = zz[[3, 1]]; y3 = zz[[3, 2]];
Print[x1, y1, x2, y2, x3, y3]
]
fy[{{1, 2}, {3, 5}, {4, 7}}]
Thank you.
Steve Gray
stevebg at roadrunner.com
Hi, Stephen,
The answer is also simple: the body of the function fx calls pt2 and pt3 that are not defined anywhere. It confuses Mathematica. If you replace fx as follows:
fx[pt1_] := Module[{x1, y1, x2, y2, x3, y3},
x1 = pt1[[1, 1]];
y1 = pt1[[1, 2]];
x2 = pt1[[2, 1]];
y2 = pt1[[2, 2]];
x3 = pt1[[3, 1]];
y3 = pt1[[3, 2]];
Print[x1, y1, x2, y2, x3, y3]]
Which is probably what you intended, it will return the result. In messages though. To see the result on the screen it is better to do something like the following:
fz[pt1_] := Module[{x1, y1, x2, y2, x3, y3},
x1 = pt1[[1, 1]];
y1 = pt1[[1, 2]];
x2 = pt1[[2, 1]];
y2 = pt1[[2, 2]];
x3 = pt1[[3, 1]];
y3 = pt1[[3, 2]];
{x1, y1, x2, y2, x3, y3}]
fz[{{1, 2}, {3, 5}, {4, 7}}]
{1, 2, 3, 5, 4, 7}
Have fun, Alexei
Alexei BOULBITCH, Dr., habil.
IEE S.A.
ZAE Weiergewan,
11, rue Edmond Reuter,
L-5326 Contern, LUXEMBOURG
Office phone : +352-2454-2566
Office fax: +352-2454-3566
mobile phone: +49 151 52 40 66 44
e-mail: alexei.boulbitch at iee.lu