Re: question about HoldForm
- To: mathgroup at smc.vnet.net
- Subject: [mg60792] Re: [mg60777] question about HoldForm
- From: Andrzej Kozlowski <andrzej at yhc.att.ne.jp>
- Date: Thu, 29 Sep 2005 05:40:59 -0400 (EDT)
- References: <200509280541.BAA08384@smc.vnet.net> <C7A03B69-E78A-4C45-9B9C-26AA77EAA489@yhc.att.ne.jp>
- Reply-to: Andrzej Kozlowski <andrzej at akikoz.net>
- Sender: owner-wri-mathgroup at wolfram.com
On 28 Sep 2005, at 16:14, Andrzej Kozlowski wrote:
>
> On 28 Sep 2005, at 14:41, Ruth Lazkoz wrote:
>
>
>>
>> Hi,
>>
>> I have this expression
>>
>> x = 2; HoldForm[x^2 + 4x + 4]
>>
>> Is there a way to operate on HoldForm so that I get (x^2+2)^2? If
>> I cut
>> a paste the result and operate on it I obviously get 16.
>>
>> Thanks,
>>
>> Ruth
>>
>>
>>
>>
>
> Do you mean (x+2)^2?
> Assuming so one possible way is something like this:
>
>
> x = 2; v = HoldForm[x^2 + 4*x + 4];
>
>
> Block[{x}, HoldForm[Evaluate[v /. HoldForm[u_] :> Factor[u]]]]
>
>
> HoldForm[(x + 2)^2]
>
> Andrzej Kozlowski
>
>
>
This may be slightly simpler, though the idea is the same.
x = 2; v = HoldForm[x^2 + 4*x + 4];
In[3]:=
Block[{x}, HoldForm[Evaluate[Factor[ReleaseHold[v]]]]]
HoldForm[(x + 2)^2]
Andrzej Kozlowski
- Follow-Ups:
- Re: Re: question about HoldForm
- From: Andrzej Kozlowski <andrzej@yhc.att.ne.jp>
- Re: Re: question about HoldForm
- References:
- question about HoldForm
- From: "Ruth Lazkoz" <ruth.lazkoz@ehu.es>
- question about HoldForm