I'd recommend Beginning C++ Through Game Programming. I bought the first edition when I was getting back into programming more seriously and I found it to be a nice, gentle introduction. I have heard that C++ Primer is a great introduction, too, though I started with Teach Yourself C++ in 21 Days from Sams Publishing. It's a good book, but it's not something you can rush through, and of course, you won't learn every aspect of C++ in 21 days, nor should it be taken as literal that it is 21 days total. From there, however, that's a different story. If they show no aptitude or interest in programming I wouldn't recommend forcing it, programming is not really an important skill to learn and there are many crevices for each language. No matter if it's Brainfuck, Assembly, Whitespace, Ada, C#, Go, F#, C, Erlang, C++, Java, or any of the hundreds of programming languages out there.
Programming on a machine that can run virtual machines (under VirtualBox, for example) is beneficial, as you can create a virtual machine, put Linux on it and don't have to worry about any of the downsides of potentially messing up your machine or having to reboot after a crash. Of course, you can always use any desktop or laptop for programming on, but having your programs in a virtual environment is great for experimenting with potentially catastrophic code (such as hard disk access or non-trivial memory management). Plus, being able to take snapshots of your system can save a lot of time if something does go wrong and you have to re-install your OS. Also; a full keyboard and a big monitor is nice.
If you're on Windows, you could use Visual Studio and it's a very good IDE. I don't use Visual Studio, instead I use gVim and a terminal/command prompt, this is just my preference. There's also Code::Blocks, which I've found to be pretty neat. I've tried Anjuta which has a fair amount of features, though I did only use it briefly, so I'm not well-versed in it.
I'm really not sure what compilers, interpreters, or virtual machines are available
on the Pandora, I've set up GCC on my desktop and am deploying and debugging via USB. A while ago, I contacted ekianjo about doing a series of programming tutorials for the Pandora to put up on PandoraLive, you can see the beginnings of what I was doing here:
https://drive.google.com/folderview?id=0B-SP21EJQpw0SjFrcHJzYmo5M00&usp=sharing#list. Unfortunately, I started a job in May that is syphoning all of my free time away from me, plus the idea for the game was too big for the small amount of time I now have and I didn't try to contact ekianjo after the second e-mail I sent as I was just too ashamed to under-deliver. All of my free time right now is dedicated to building my game demo for my portfolio, though I'm still very interested in doing a series of programming tutorials for the Pandora. Sorry about that tangent.
Oh, and there is really no best language, they all have their pros and cons.
And I'm editing this now because I've realised that I haven't really answered your question at all. One way to introduce them to programming could be through games, business applications, office software, or whatever they find interesting that they would like to contribute to working on (I should really say "playing" because it's never really work when you're starting out). I'm not a parent, so I have no idea what it's like to ask someone who has spent their entire life under my care what they are interested in. Is there any specific reason you believe they should learn to program?