I thought I had written the physical system move functions in my demonstration project with due attention to system boundary behavior and off-by one errors. Nope. It took me a couple of hours of debugging to get them all working right, and I still need a little more testing to confirm it. This is why I started working with a system with a great grand total of TWO possible elements. The more room there is in the system, the more possibilities there are for interaction. Since I will be working with objects of multiple sizes and shapes, I need to start now to develop the physical objects beyond particles.
I have a basic concept of chemical elements: I need to expand my version of the Periodic Table to more elements. In order to do more with chemistry, I need a better variety of physical functions, so this be a priority.
The rest of the demonstration program will take a little more time. The printout is now at 56 pages, and I want to go through and add various techniques to the numerous basic functions. I also need to push my review of the text a little further.
I had decided last month to pick up the third edition of Deitel & Deitel, to see what changes had been made. There weren’t many changes in the concepts and exercises. The elevator simulator was developed into a program, and I was intrigued by it. I have decided to try to enter it, one object and behavior at a time, and test the functions as I add them. I will have to see how this works.
I have been pushing hard to get through the chapters and illustrative figures in my principal text. I’ve finally finished chapter 5 with pointers and (old, c-style) character strings, so I can let myself start to use those in my demonstration program. I’m also most of the way through chapter 6, the first part of the section on classes, so I can start using those more freely.
Before I go back and pick up on more of the exercises, there are several ideas I am working on for my demonstration program that I want to incorporate. The earlier exercises are by now fairly tedious, but some of them still have ideas I want to incorporated. Others that have already been included can be substantially improved with the addition of concepts that I have already reviewed.
I recall that when I was studying C++ programs, at this point I was struggling with personal physical and mental health issues, among other things. I recall the terminology from lectures, but I was falling behind on the exercises, so I didn’t fully understand them. It’s not just brushing the rust off, it’s a matter of properly studying the things I was merely exposed to.. I will still be reviewing the exercises, but as a starting point for more imaginative projects.
And then, I still have some 15 years of developments in the industry to catch up on.
When I was in elementary school, I often got in trouble for reading ahead in the book. I don’t suppose anyone is going to lecture me for jumping ahead a little bit on my own self-designed program, but some of the early exercises are a bit more tedious than I can stand. I used the some of the string-handling functions to get my chemical element class started. Others should follow in due time.
I’m having a hard time working through the exercises. It’s necessary to get practice and acquire skill, but sometimes it gets tedious. Today’s most useful additional technique was the demonstration of array of pointers to functions. One of my exercises was a fairly simple modification of an existing program, that for some reason wouldn’t work. I finally traced the problem, and it was a common, elementary mistake.
I keep thinking I have a program done perfectly so that it works right the first time. NEVER the case. There’s always at least one picky little thing: A missing space here, a wrong symbol there, a missing semicolon or a comma somewhere else, or in place of the right symbol, and the program either won’t compile or it does something absurd. Always at least one. I thought I liked being exact and precise, and sometimes I do, but sometimes, !@#$@!@#$ computers!
I keep expecting that “tomorrow”, I’m going to get to the big break that’s going to let me make some real progress, and I get to tomorrow and find out that it’s the next day, or the day after that. Real Soon Now.
The figures are good for introducing and reviewing concepts, but I’ve mentioned before that I need to build up skill with exercises. Doing work with control structures, functions, and arrays will help. I remember when I took the C++ programming course some years ago, I started falling gradually further and further behind when I got into pointers. I paid more attention in the section on classes, so this is more of a review. I am still going slowly in the intermediate chapters, since these depend more on concepts I haven’t finished reviewing yet in the early chapters.
I have finally finished reviewing the content and figures for chapters 3 and 4 of my principal reference. I still need to go through the exercises. I am looking forward to finishing chapter 5, which will include string handling functions; chapter 6, which deals with classes; and 8, overloading, which will let me handle mathematical classes better.
It seems that it has been a while since I made progress with the figures in my text, so I took part of today to concentrate on those. So far, there hasn’t been anything especially revealing, but small pieces do eventually add up.
I reached a minor goal with getting a driver or test routing for my physical System class of my demonstration program. I also got a game into the behavioral culture section: Not a very good version of one, but it will do for now.
I also have stubs for algebra and analysis in the mathematics section. I expect that I will be needing them before long.
I swatted a few bugs and got the notably missing pieces of documentation I wanted to include in my demonstration program. I should be about ready to proceed with adding more functions.