Post Experiment Interview Questions

Size: px
Start display at page:

Download "Post Experiment Interview Questions"

Transcription

1 Post Experiment Interview Questions Questions about the Maximum Problem 1. What is this problem statement asking? 2. What is meant by positive integers? 3. What does it mean by the user entering valid positive integers only? 4. What does it mean by Determine the maximum? Discussion about Participant's Solution to the Maximum Problem 1. Lead me through your solution... what does this part do? 2. Does your solution solve the problem? 3. Are there any improvements that could be made? Questions the Averaging Problem 1. What is this problem statement asking? 2. What is meant by Read any number of integers? 3. What does it mean by until the value 9999 is encountered? 4. What does it mean by Output the average? Discussion about Participant's Solution to the Averaging Problem 1. Lead me through your solution... what does this part do? 2. Does your solution solve the problem? 3. Are there any improvements that could be made? Questions about the Set Counting Problem 1. What is this problem statement asking? 2. What is meant by Stop when a value outside this range is encountered? 3. What does it mean by output the occurrence of each of the values 0 to 9? Discussion about Participant's Solution to the Set Counting Problem 1. Lead me through your solution... what does this part do? 2. Does your solution solve the problem? 3. Are there any improvements that could be made? Page 1

2 Transcripts of Interviews with Participants of the Curriculum Experiment The following solutions were presented by participants of the Curriculum study. The solutions presented by each participant are presented first followed by the transcript of those who volunteered for interviews. Participants were in two groups as follows. First the solutions of those presented a curriculum which incorporated instruction of problem solving strategies explicitly. Participant 12 Participant 21 Participant 29 (no interview) Participant 30 These are followed by those who were presented a traditional curriculum with implicit problem solving instruction are presented. Participant 1 Participant 6 Participant 13 (no interview) Participant 14 Page 2

3 Participant: 12 Curriculum: A (including explicit problem solving strategies) Solution to Problem 1 Page 3

4 Solution to Problem 2 Page 4

5 Solution to Problem 3 Interview Conducted: 10:30am, Wednesday1 st June (16 days after course) [0:12] Let's cast our mind back to where we were a week and a half ago. In the first day we covered the basics of programming. In the second day we did some repetition and some arrays. And then following that we did some of these problems and it's these problems I want to talk to you about today. Just to get you going, can you please read this problem statement. (Participant reads problem statement aloud) What do you think the problem statement is asking? I think it wants the user to enter 10 positive integers and the program must calculate out the maximum of these 10 integers that it previously record. What do you think it means by positive integers? Positive integers must be a plus sign in front of a number and it shouldn't contain decimals. What do you think it means by the user entering valid positive integers only? Page 5

6 Valid It says assume the user will enter valid positive integers only. Why is that there? I think they just require them to enter, what I said previously, the positive integer without decimals. It must be bigger than zero. So do we have to deal with negatives in this problem? No. Understands the simplification What does it mean by determine the maximum? Determine the maximum from the record. It has to found out the maximum number, the greatest number the user enter. And how is that done? Can I do it from the program? Think about the process; what would have to happen to determine the maximum? Just get the biggest number. I don t really understand it. The numbers you collect in the 10 arrays. The program must??? off the biggest integer in the array. How? Can't really tell. (Laughs) Has not shown evidence of the maximum plan Lead me through your solution... what does this part do? I have to??? my memory. That's fine. Take your time. I'm not very correct. The variable, we have to determine the variable number to store equal 10. And variable message equal to Enter a number. What are they for? They are for the prompting for users to enter the 10 numbers. The number to be stored, that must be 10 numbers. And variable count equal to zero. Just assume the count is from zero so whenever the user enter a number the count equal one ++ and so on until 10 numbers are maximised. And the other is variable input equal to zero. Just want them to enter the number and for count equal to zero and whenever a number is less than numbertostore, count ++, it keep counting on until count is greater than 10, so it must stop. To do that we must pop up the alert message: Enter a number. Keep repeating the whole process again, asking to enter a number until the counter is 10. So this is going to output the message 10 times. And the other is input, parse integer so you prompt and ask them to enter a number and whatever number they enter you have to translate it to integer. Whenever they have a Page 6

7 decimal you have to convert it to an integer and if the input is greater than zero and input is greater than input then input is the maximum number My program here is wrong. What I want to tell is when the input is greater than zero and the input is greater than every input then finding out the maximum input; then that input is the maximum. There are a couple of problems with it, but there are some good ideas there. Does your solution solve the problem? I don't think so, it will solve. You don't think it will. So improvements What improvements that could be made? Is it necessary to use array in this question? No. So how are we going to input? You've got the input sorted out. I just think like whenever the number is input, if it is greater than the previous input just remember that number. Whenever any new number is keyed in by the user you have to compare the current input integer with the previously stored integer. Now I input 2 and I store 2, now I enter 4, 4 is greater than 2, I remember 4 and forget 2. Whatever number is biggest, you have to show the latest biggest number. I think you've got the idea of sorting out a maximum. But there was two things going on there. You've got the user's input and you're talking about the maximum. I would add another variable for the maximum.; that's one thing I would do which you don't have. If you did have another variable for a maximum, and we're dealing with positive integers only, what would you initialise that to, the maximum? Just say you'd declared it up here. what would you initialise it to? (No answer). Down here you've got a loop, which is going through 10 times, which is fair enough, you've got an alert there which doesn't really do much except pop up a message and then you're gathering your input there [after the loop] and you're testing there [again after], but these are outside that loop. Oh. So this is only going to happen once. Describes a maximum plan I think I should put the count into the program here. Should these be in the loop? A goal/plan strategy term Page 7

8 Yes, it should. It should be in the loop. So that whenever the input is keying in they have to merge with the loop. The message until 10, before that, before 10 they have to repeat the loop again. Alright, so there's a few things you could do with that. [10:28] Now read this problem. (Participant reads the problem statement aloud) Again, what is this problem statement asking? It asks that we need to put any numbers, it unlimited how many numbers they enter, until they enter five 9s. Then we will show up the average, for like how many numbers they have input, that's count, and the total of all numbers he or she has entered. That's pretty good. What do you think it means by: read in any (this is going to repeat what you have just said but, read in) number of positive integers? Read in any number of integers. What ever number required, must be integer, whatever decimals or positive or negative integers, no decimals. I'm probably confusing you by asking that again because you did say it correctly. What does it mean by: until the value is encountered,...? This is a loop and if the number 9999 is not entered by the user, the loop has to keep repeating and keep asking the user to enter the numbers again. However, if 9999 is entered they have to stop the loop and you have to come up with a final message to show up the average. The total number and the count is the average of all the numbers the user has previously entered. So it says output the average. What does it mean, at the end, by output the average? Just prompt out the average. Average is sum divided by count. So just output all the numbers the add up of the total numbers the user enters and divided by how many times the count for the numbers. Without looking at that, how are the sum and the count captured? I think we have to use an array again to store the number, store the integers that the user enters. Why an array? (Participant thinks to himself) Page 8

9 Let's have a look at your solution. Just lead me through your solution here. The variable input the variable equals zero, count equals zero, sum equals zero. So what are those variables for? The input starts at zero. It helps the program to initialise that. The input will start from zero so that the first number, second number, will be entered as one, two, three and so on. Really, will they? So the user will only enter those numbers? Think so. And for count, we have to count until 9999 is encountered so we should start from zero, and same for sum. Sum is the numbers the user has previously entered and just sum it up together. The variable message Please enter a number is prompt message to the user to enter a number. For the program: input equal to parse integer prompt message. So what does that do? First it put up the message Enter a number and whatever number key in you have to parse it into an integer and this is record the number as input. So we will use a loop. While input is not equal to 9999, whatever number the user key in is not 9999, the input must be showed as sum plus input. If they key in 4, just leave it as 4, just store it as a 4, sum start from zero as this is the first number, so is 4. The next number I think I might have missed something. This might be around the wrong way. But you've got the right idea there. How to get the sum? Instead of input here, it should be assigning to sum. sum = sum + Yes. But I think you've got the right idea there. Count ++ is how many number they enter just count them. So it has to count the average, just sum divided by count, so count is calculate them. The sum, I written wrong as input is not true. And finally if we fail that means the loop is failed without hitting 9999 the input has to be shown again parse integer prompt message and ask the user to re-enter the number again. Until 9999 is encountered is get it from the user. Then we have to alert and prompt up the average sum divided by count It's the right calculation. Sum divided by count, doesn't say anything about input. It's the correct way of calculating the average. Does your solution solve the problem? Shows confidence in their strategy In my opinion. I'm very confident in doing this question because I know the right way to structure. Just for the input equals sum plus input so, it doesn't work. Page 9

10 Yes, and can I say that your solution to that is the closest of all the people who did it. Really. Thank you. I would ask you one question. What if the user enters 9999 the first time? 9999 the first time, the loop will Just run me through it as if the user had entered 9999 it should be altert The average is... because it failed that first test, input and count will go over, the prompt will be undefined. No, remember, we are doing a division here. So if count is zero, what will happen. The count will be 1. No, where do we increment count? Can't really understand what you ask. My point is here that if we divide by zero, if count is zero and we divide by zero, if is entered for the first one, we wouldn't get to here [in the loop] so count would still be zero when we get to there, and that would cause a problem. We need to guard that division. We talked about Guarding Division. Yeah. No one else go that so [20:45] Turn over. Last question? Yes. Read it out. (Participant reads problem statement aloud) What is this problem statement asking? We ask them to enter any numbers that between zero and nine and whatever number they input we have to convert into integers using parse integer. Whatever numbers that don't belong between zero and nine the loop stop and output is shown that like zero, which numbers they have entered and how many times they have already entered. You've already said some of this. What does it mean by: stop when a value outside this range is encountered? Page 10

11 Whenever they gets any numbers that do not belong between zero and nine, the program stop, and go directly to the output showing the occurrence of each value. What do you think it means by: output the occurrence of each of the values 0 to 9? Just assume they have entered one, two, three and 10. So until 10 and it stops. They have already entered ones, so one colon one. And two they have entered once, so two colon one. And three, number three, entered once as well, so the output should be one colon one, two colon one and three colon one, and 10 it doesn't count. What about the other values from nought to nine? The other values from 4 to 9, because they didn't enter any, they have to show that. They have to pop up the output of the occurrence. Lead me through your solution. Start off with the variables. The variables, number-number count of totally they have to store is ten numbers, it start from zero to nine. An variable counter, we have to count how many times the variable input. And variable input, we have to know the input. And variable numarray is we use array to store like zero is array zero, one is array one, so like whatever number they have input once just store that to the particular, individual array. And when the program stop just show up which array the user has enter and show the occurrence and the one the user doesn't enter, just leave the array blank. What does the next part do? It's a loop, for loop. For counter equals zero. Start from zero again. And counter smaller than numbernum. Counter++. And the message is numarray[counter] equals zero. A very syntactical So what does that do? translation Start from counter equals zero, whenever counter is smaller than numbernum numbernum is zero to nine. So what does this line do? This number, if they array they enter is one so the counter will put one Why are we doing this? This is the record of the occurrence. Which number they have enter and which number they have not. So why are we assigning zero there? (Participant thinks to himself) I can't understand this. You obviously did when you wrote the solution code. Let's move on. Explain to me the rest of this. Page 11

12 input equals parse integer prompt Enter a number. Whatever number they input parse back to the integer. If the input is greater or equal to zero and smaller or equal to nine means it is between the range zero to nine. The numberarray input equals counter what I mean here is input equal to nine, so the counter will be count as nine in the array for the for loop. So that the number the number is not belongs to zero and nine we have to put they have occurred how many times. So does the solution you've got there solve the problem? I don't think so. I believe that there is a problem again. Where? It fail to do the first one, the counter (Phone rings) Don't worry about it. What about down here? Whatever number they store is equal to counter, counter must be less than 10, then we have to repeat input again, until they fail the first while input is greater equal to zero and smaller than equal to nine and we have to alert them and show them which number has occurred how many times. There's a couple of holes I see in this. I'll explain them to you because you've got most of the ideas you need down here. In this one here [in main input loop] you are using counter and counter is irrelevant at this point. You've used this correctly, rather than storing the user's input in the array (you did talk about it briefly there) we're using it as information about which part of the array we want to refer to. So what we can do is just get that, say, if the user had entered zero, that would be the first element in the array, we just get that number out of it and we can increment that number. You could just put a ++ there or it would be something like just to add one to that number. Down here [last statement] this alert is good, except it should be in a loop. Because you want to go through the array and show each of the counts. This would need to be in a loop. But you did quite well and you obviously understood most of the problem apart from that. I think I'll just stop recording now. [30:35] Interview ends. Page 12

13 Participant: 21 Curriculum: A (including explicit problem solving strategies) Solution to Problem 1 Page 13

14 Solution to Problem 2 Page 14

15 Solution to Problem 3 Interview Conducted: 4pm, Wednesday 25 th May (9 days after course) [0:02] It's been a week and a half now. You might want to cast your mind back to where we were at the end of that course. So we had done one full day of basic programming and then on the second day we went through repetition and arrays and at the end of that we did these problems. And that s what I want to talk about today; taking the problems into account, one at-a-time, and running through them your thinking about them and things like that. Have a read of that, just the problem. Take your time and think about it. (Participant reads problem statement silently) What do you think the problem statement is asking? It's asking for numbers, 10 positive numbers or the ability to accept 10 positive numbers from a user. And it's asking to return the maximum, which is something I had a problem remembering how to put that into code What is meant by positive integers? Page 15

16 Anything greater than zero, on the positive side. What does it mean by the user entering valid positive integers only? To perhaps put a catch there if the enter a negative there's an alert to say, maybe, to say you need to enter a positive number. Are you saying that that's something you would have to incorporate into the program? Well it would be handy to, otherwise in the first statement you'd probably say put in positive numbers, 10 positive numbers. Why would we do that? Why would that be in that problem? Probably to make it a lot simpler, I suppose. Does understand simplification What does it mean by determine the maximum? Perhaps the maximum sum. I'm not really sure. I haven't really had a look back over it since the course. Have a quick read of it again. Probably when you reach the maximum. So when 10 integers have been entered, that's the maximum. So we either calculate or exit the program maybe. So here's your solution. You've obviously done a bit of work on it. Can you lead me through that from top to bottom? Doesn't understand the maximum plan. Here I started going for an array, but then I thought it was a lot more simpler than that. Just getting a number from a user but then turning it into a like parse inting it with converting it from a letter value to a numerical value so the program can use it. Then basically storing the numbers back into, perhaps, an input so that but there I've only really allowed for one I think. I can't remember. Basically getting input, converting that so the program can use it and test until you hit 10. Then when that's hit, sum it maybe. Do whatever you want to do with it and then giving an output. Does your solution solve the problem? I think it would go close, but obviously it needs to be variables there and a test for the program maybe a bit more elaborated on. OK. So you could improve on that. Oh, for sure. Shows confidence in solution, even though incorrect Lets go onto the next problem. [6:36] Have a read of that problem. Page 16

17 (Participant reads problem statement silently) Again, what do you think the problem statement is asking? Uses GP terminology. It's asking to enter, basically, any number or an unknown number until that number, five nines, is input. Which I did recognise as a sentinel loop. A user can enter any number and what it's asking here is to output an average on positive valid integers. What does it mean by: read in any number of integers? Means it allows a loop unlimited amount of integers to be put in until that value there is entered. And what does it mean then by: until the value is encountered,...? You sort of said it already. When that value is entered then the program exits and calculates the average. What does it mean by output the average? It means to, say, put that into an alert and present the alert. How would that be calculated? That would be the sum of the numbers divided by the sum I think. No, it would be just create a mathematical equation for The sum divided by the count. Yeah. And how do you get those bits? To get the sum and the count, how do you get the sum and the count? You d use the operators, mathematical operators So how would you get the sum? Add all the numbers, all the values that were entered, together. Describes a SCL plan. This is your solution. Lead me through your solution. What does each part do? To start you have an unknown amount of numbers put in. So create variables for that and then initialise probably wouldn't need to initialise that, oh yeah you would initialise that zero Get user input, any number except that value. Store that, make sure it's converted and then create a loop get user input outside and inside so that it's, I can't remember the name. That kind of loop. A Sentinel Controlled Loop it s called. Yeah. Until that value is encountered. And then do the some and output that through an alert and end the program. Does your solution solve the problem? Page 17

18 It'd go close, but probably again have a test to check the valid integers are put in. Assume we didn't need that Yes, I'd say so. Doesn't know his solution is flawed. Do you see any improvements that you could make? I can't think of any. So, just a question then. If you were calculating the average, how is that done again? OK, the average, find the some and then divide by the number of values entered. So with the division is there anything special we have to do? You could collect the remainder if there is a remainder. I know what you're getting at, just return the whole number for the value at the end of that and chop off the rest of that Not what I was thinking but anyway. Flip over to the next one. [14:08] Have a read of that problem again. (Participant reads problem statement silently) What do you think the problem statement's asking this time? It's asking for integers zero to nine, any value can be entered or any number of integers OK and when a value outside zero and nine is encountered it stops, stops the program, stops accepting those values. Once the values have been input it will output the occurrence, the amount of times a value was entered. How does it go about figuring out how many times each number was entered? It will increment, check that value and then if it matches with the array it will increment that by one and count, 1,2,3 and so on. What does it mean by: stop when a value outside this range is encountered? When it reaches a maximum there it will finish the loop. What sort of values would that be? Greater than nine or less than zero. What does it means by: output the occurrence of each of the values 0 to 9? It means to display the number of times a value was placed in that part of an array. Let's have a look at your solution then. Page 18

19 Lead me through your solution again. Obviously making an array. Initialising the array, so creating a space between zero and nine just trying to remember. How would you initialise the array? Probably create, say, zero, one, two three, up to nine. Yeah, probably do that. So would you store them in the array or something that s? They are the array, aren t they? They're like position on memory. They're really a container What are you going to initialise that array with? With new array. That would create an array. Oh, initialise I can't remember mate. But you do want to initialise it. Yeah, for sure. And then you use user input, create a variable. Put in a new array there that's not right. You've got a couple of arrays here. I think what I meant by that was to initialise the array. And then create a counter a counter variable for the loop. And then you get user input between those values, store it in the array and count off so you increment or decrement the value that's passed to each, whatever you decide to do, I suppose. So give me an example. I'll use one, say days of the week. So if someone puts in Thursday No just in here. If someone entered three, what would happen? OK. The array box for that value would be incremented one. If it were entered twice it would be incremented twice. You could loop it until a value is met or give a condition or you could have an alert, an error message if the value is outside those values And then at the end of that the occurrence of each of the values that's been stored in the array. How would you do that? You'd have to find the values that were stored in the array. And basically pull out the count of each and display the count. I can't remember how to do that off the top of my head. So does the solution you've got there solve the problem? Maybe if I did more work on it. It probably goes close. Again shows confidence in solution Page 19

20 Are there any improvements that could be made? For sure. Just to make sure those values I had trouble with this back in the course too where I was trying to, probably, making sure these values are parse int, I was putting in and getting back a null. That's not that important. Just making sure that does loop inside as well. That's good. That's the questions I wanted to ask. [22:44] Interview ends. Page 20

21 Participant: 29 Curriculum: A (including explicit problem solving strategies) Solution to Problem 1 Solution to Problem 2 Did not attempt a solution. Solution to Problem 3 Did not attempt a solution. No interview conducted. Page 21

22 Participant: 30 Curriculum: A (including explicit problem solving strategies) Solution to Problem 1 Solution to Problem 2 Page 22

23 Solution to Problem 3 Interview Conducted: 4:30pm, Wednesday 25 th May (9 days after course) [0:05] Now cast your mind back. It's a week and a half ago now. Doing the course we did one day of basic stuff. The basic stuff I got. It was the next day I think people were full after the first day. I think you needed to revise it a bit then. Just a gap would have been good then too, so those thoughts could have settled down building them up. No to worry. In the second day we did another half day of stuff; we covered repetition and we covered arrays. And then we did these problems at the end and it's these problems that I want to talk about today; what you thought about them and things like that. Have a read of the first problem. Page 23

24 (Participant reads problem statement aloud) What do you think the problem statement is asking? Does not understand simplification That you have 10 numbers and you have to determine the maximum using only positive integers. The user will only use positive integers so the numbers will be increasing, I guess. Determine the maximum number didn't understand that one. What do you think it means by positive integers? Above zero, greater than. What do you think it means by the user entering valid positive integers only? The setup would, when you come to a screen, if the number was a negative it'd skip the whole thing and just go to that. Whereas if it was a positive it would go through the process of determining the maximum. Rather than meaning we are going to deal with both positives and negatives we are simplifying the problem by saying we only really have to deal with positives. We are going to make the assumption that the user is only going to enter positives, just to make our job easier. What does it mean by determine the maximum? Does it mean the entries, or the number, determine the maximum number? Well, we're getting 10 numbers. So out of those 10 determine what's the biggest number. And how would you go about doing that? You mean in a program? Just in general. Well you'd have zero, and then you'd have the zero plus one so I guess it'd be an extra add on, you'd have zero and then you'd have zero plus one, zero plus two. It would be a constant, that whatever is greater than zero. You haven t really created a solution for that. Can you think, if you had to write a solution now, could you think of any aspects that you would have in it? In the program? Yes. Have a counter and would you have Can you make the program look at the digits I guess, so you could determine the maximum. I don't know. Doesn't really understand You may be overcomplicating the problem in your mind. how to get a maximum. Page 24

25 I do that. I'm not very good at maths. Maybe sometimes you have to sit back and say, well maybe the problem's simpler than I'm making it out to be. We'll talk about that problem more at the end. [5:30] Let's have a look at the next one, which you got a chance to have a go at. Read that one. (Participant reads the problem statement aloud) So what's it asking this time? Confusing inputs with outputs. Basically it's forming a counter that's counting how many outputs you put into it, how many outputs the user enters. And it keeps on counting until the user puts into it and then it averages out from the numbers that was entered. Like average out the number of the entries. What is meant by: read in any number of integers? It means you could put in one numeral or you could put 10. So what does it mean by: until the value is encountered,...? Just that. That the user puts in numbers and continues to put in entries until he puts that number down is encountered or is encountered does that mean you can put in No. OK, so it's just when the user puts those digits in. And then it counts how many. What does it mean by output the average? That, from all the data you've collected until the user has written that number. So the output is all those numbers that he has put into the system and then it calculates the average of those. And how does it calculate the average? It doesn t look at the numbers you've put into it, it's the counters of how many times you did, so wait a sec (reads problem again) Do you remember how to calculate the average? How do you work out an average? You mean in high school? Whenever. What was it? I'm not really in a maths mind at the moment. It's on the tip of my mind, but I can't remember it. So you've got the count involved. Page 25

26 Yeah there's three types of way you can do it. What is it? You take all the numbers you count, plus them together then you divide it by the number of those things. So that's basically what you do. So you take what numbers have entered, you plus them together, you divide it by the numbers that is you've put into it and that's the average of it, of what you've done. So the average will most probably definitely not be 999 because you're waiting until you do that, and that's the stop for the program. So it takes all the numbers you've encountered. Let's have a look at your solution. Lead me through your solution. What does it start off with? What does this part do? I know there's a counter. I know the person puts in inputs and I know that the number, the stopper is like So that was the number that was going to be. That was supposed to be a counter, so it's always in a positive increment; you can't do a negative and the number is counted each number is counted so you can include the average at the end. And for the counter, the counter will keep continuing until the counter is equals What was I thinking there It's saying if the number equals 999 it equals so it stops. Then you do the sum, which is counting up the average, or I was trying to, but then I was trying to I didn t get this finished. But, basically, it's forming a positive counter and forms a repeditives It s a positive counter and the counter will keep on continuing until the person enters 999 then the average of the inputs will be done. Let's move onto the next one then. There's a number of other questions, sorry. My next question is: Does your solution solve the problem? What, you mean that or that? In its entirety. A show of confidence in the solution. Well my solution in my head did, not like the first one, so yes. I did understand this question so I could go through the steps of doing it. Are there any improvements that could be made? Definitely. Yeah probably. Doing it in a more logical manner like steps, things like that. [12:40] Let's have a read of that problem then. (Participant reads problem statement aloud) Doesn't really understand arrays. output the occurrence of each of the values 0 to 9. So that's the box thing. Basically put it in, you have from 0 to 9 boxes, every time you hit a number it goes into that box, so one in one, etc. When a person enters something out of that, it'll stop the program. (Person interrupts interview briefly, participant is undeterred.) Yeah it creates a positive count Let's not run through that yet. What does it mean by: stop when a value outside this range is encountered? Page 26

27 It means the program will bring up something else other than counting it. It won't count it, it will stop. Could you give me an example? What sort of numbers would Valid integers only. Aren't the only valid ones between 0 and 9? So what's a value outside that range? 10, anything above 9. Anything below zero. What's meant by: output the occurrence of each of the values 0 to 9? You mean output is concluded? After input is concluded, output the occurrence of each of the value of the numbers. After you've put a number that isn t in that range it concludes the program and tells the person what numbers you've put into your little boxes. It goes through zero to nine and it tells you how many are in each box. So if I entered 3 five times? You d get a 5 for threes. Seems to understand set counting. OK. So now let's have a look at your solution. Lead me through your solution. What does each part do? There's obviously a counter because every time it's entered it's counted and put into a little box. The input, so there will be a variety of inputs. New array equals zero But for the counter Let's slow down. What do you think this means? Think about it. You have to reference each number and put them in its place. What's this part doing then? The counter will continue each time the number is put in No, this part here. For the counter, so it's saying that each time a counter an input. No there's no input in there. The counter equals zero at the moment, but it will, every time a number is put in, the counter will start at zero and every time a number is put in the counter will increase, brining out which numbers are in each box. I think that's doing something different to what you're saying. I know it's a counter, because of that. So it is saying that every time you put a number in it counts it. There's no input in here. Why is that there? Page 27

28 Don't know. Let's move on. So this part here, what is that doing? So this is stopping the counter, basically. If the counter is greater or equal to 9 is that right? Well the counter's zero. Don t worry too much about what it's doing there. Just describe what it's doing. If the number plus the input, so that's working out which one's goes into. Like how many numbers are in each input. Well the number plus the input Can't remember, forget. It's alright, keep going. Create a base positive count. That's meaning with each integer that's put into the same box. So four ones that continue counting until it stops. Form the structure of what numbers will be used or may be encountered. So I have to basically have to make a program which says that if a person does this, that's where it will go. So that's the structure of it. Set up a tally count for each selected. What do you think that means? Set up a tally count for each one selected. So there's a for each number selected a little tally will go for each time you've said it. So how is that achieved? Creating a counter. So you were talking about boxes. Let's say that is an array. How is that array used. Well the array, they have single elements which each number is designated to. And what happens in those boxes, or those elements? They're tallied up. And continue to be tallied up until the counter is stopped or is outside the That's forming the exit value so if it's greater than or lesser than so show the tally count for each individual number so the end process would be displaying what you have put in a finished format. So if you did 50 ones it would come up with 1:50. Does your solution solve the problem? Again quite confident. For two of them yes I do think so. It does need work I think, but basically I knew how to write it. I think I could go logically and do the process for it. Are there any improvements that could be made? I think that so long as you look at what has to be done next I think it's pretty logical. OK. I'll just stop it there. [21:56] Interview ends. Page 28

29 Participant: 01 Curriculum: B (excluding explicit problem solving strategies) Solution to Problem 1 Solution to Problem 2 Page 29

30 Solution to Problem 3 Interview Conducted: 11am, Wed 25 th May (17 days after course) [0:02] Cast your mind back to two and a half weeks ago. In the course we started off with a days worth of basic stuff and then we went into repetition and arrays on the second day. Then we followed that up with these problems and it's these problems that I want to talk about today. So, this is the first problem, have a read of that. What do you think this problem statement is asking? It's asking for 10 positive integers from a user. With those integers we need to determine the maximum. What do you think it means by positive integers? Just positive numbers, zero and over. What does it mean by the user entering valid positive integers only? Meaning that it doesn't accept negative integers. Participant misunderstands simplification What would happen if the user entered... is that part of the problem or are we eliminating them? That's the question here. It's not included. It's not what the question is asking here. So only for positive numbers. If the user enters a negative value, probably the program will stop, or something. Page 30

31 It's really there to simplify the problem. To say we are only going to deal with positives. If we had to deal with positive integers that would make the problem harder. It would require more codings, right? What does it mean by determine the maximum? Determine the maximum value within 10 integers entered by the user. How would you go about doing that? Probably, some calculation. Compare each number with each other. How? Not sure. OK. Having a look though your solution, can you lead me through your solution a step at a time? I was trying to initialise this variables. I was thinking of doing the completion, but I got stuck there, that's why... initialise this max variable. And then set it to counter equals zero. I was going to put each number onto an array, which, come to think of it now, I really don t know why. Input variable, I just kept the integers from the user. Message, just the message of the maximum of the integers. This one is for storing the number of... the storage space in the array. I was going to do a for loop, starts from zero. In the for loop I was going to put the actual user's input into the array. So, does your solution solve the problem? No. What improvements could you make? I don't know really. I'm not sure. I still don't know how to go about this question. So you are not sure about how you would go about getting the maximum? [Acknowledges] Let's turn over and look at the next one. Read that problem. [6:35] What is the problem asking this time? It's asking [for] a set of numbers entered by the user. And [it's] after the average of the inputs until is entered, it will stop. What does it mean by read any number of integers? Any numbers, positive or negative, until this number is encountered. Page 31

32 What does it mean by until the value is encountered? To my understanding it would be an input to stop [the] enter prompt. It just stop that. So at the end, what does it mean by output the average? Add up the inputs and get the average of the inputs. And how would you go about doing that? Probably store each number entered... there's probably a calculation somewhere. Probably initialise a sum variable. Just divide the number of inputs. Let's go through your solution now. Can you lead me through your solution? This variable, counter equals to zero, sets counter to zero. Message variable which will promote enter number. Initialise sum variable, then the average. Average is the... tried putting average, don't know why. Then there's a while loop saying the counter is not equal to this one then it will continue prompting out the message, and then add it to the counter until... I was probably going to do else-something here. Until this numbers is entered then it will stop the program and do the computation. Then I stopped there because I was stuck, then I continued going here. The calculation I was going to put is the average is the sum divided by the number of counters stored, which means the input. And then output the average. Confusing loops Does your solution solve the problem? with if. Probably, if I got time to add up more things. Are there any improvements you could make there? Fill in the gaps there? Yes, definitely. I was planning on... I was stuck because I don t remember key words. That's not important too much. I was going to do the else. This one not encountered, then this. It would probably run if I had more time. Flick over to the last one. Read what's up the top there. [11:48] Participant was not restricted by time. What's the problem statement asking this time? It's asking [for] user input. It's just constrained between 0 and 9. And it's only valid integers only, meaning 0 to 9. If the user enters, say,10 or negative 1 then it would stop, stop running. It's asking how many times each number's repeated, to display the amount of times that particular number is entered. Where it says stop when a value outside this range is encountered, what does that mean? Page 32

33 It stops. It will only accept numbers 0 to 9. Any other numbers, bigger or smaller, bigger than 9 or smaller than zero, it will stop. What does it mean output the occurrence of each of the values 0 to 9? It outputs the number of times each value, 0 to 9, is entered. It outputs that a number of times. How does it know how many times that's been entered. How does it know?... Temporary storage or something? Each time a user enters, say zero, three times subsequently, probably store onto an array or something. That's how I'll go. Lead me through your solution again. I tried doing an array for this one. I just initialised a counter. I tried doing the array but I got mixed up there, I just not quite sure how to write it down. That's right. That's correct. I tried doing this, initialising to 0, meaning there's no value yet. And a message, prompts to enter number. The number of storage, I was going to initialise it as 10 store section. Then I tried doing a for loop here... What does the for loop do? Keeps repeating until number's not 0 to 9. I was going to do an else after that. For loop is for... it keeps repeating, keeps prompting for numbers. Each time the user enters 0 it would say 0. It continues prompting out again until 10, the user enters, say, 10. Then there's an else, I probably put that, an else there, stopping the program. This is nothing... What were you starting there? I was starting... this one I was probably going to start on the last line, output the number of occurrence of each value. That's good. So, does your solution solve the problem? No. I'm guessing there's a long way to go after this. Are there any solutions that could be made? Participant expresses lack of self confidence in programming ability. Yes, a lot. Probably this section, the for loop section. I don t think this, what in my mind, if I was going to continue, give me time, I was going to continue with reference. I'll probably mess it up anyways, because I'm still not sure how to... how do you really put each keyword before whatever. I'm still not sure how... It's more important for me, at this stage, to see that you know how to solve the problem. I understand the question. I was thinking through. I got everything right in my head. I just can't put it onto codes. That's not uncommon. I know what you mean there. Page 33 User expresses typical gap in problem solving ability.

34 [17:40] Interview ends Page 34

35 Participant: 06 Curriculum: B (excluding explicit problem solving strategies) Solution to Problem 1 Solution to Problem 2 Page 35

36 Solution to Problem 3 Interview Conducted: 2pm, Tue 24 th May, 2005 (16 days after course) [0:08] Let's take a couple of seconds to cast our minds back to where we were at the end of the course. We'd done a pretty full-on day of introductory stuff, then the next day we went into loops and arrays; that was a bit more drawn-out, in depth. At the end I asked you to have a go at these problems. Let's have a read of... just read the problem... What do you think the problem statement is asking? It's asking the user to enter 10 positive integers, and then the program will determine from that time, integers given, which is the maximum; the highest. What do you think it means by positive integers? Anything that's above zero. So one and above. What do you think it means by the user entering valid positive integers only? Maybe, it's not a floating point, it's just a whole integer. There are lots of things a user could enter, like letters and so on. For it to be a positive valid integer... could a string?... put both character and integer in it? Why do you think it's saying that the user could only enter those? Because you need that to determine the maximum amount. Does not understand simplification Really it's just to make your job easier. Page 36

37 OK. You don't have to worry that they're going to enter the wrong thing. Yes. What? I'm lost. OK. Can you repeat the question again? The question was, what does it mean by the user entering valid positive integers only? Because if it's not a valid positive integer. Then you won't be able to determine the maximum. Yeah? That's right. What does it mean by determine the maximum? Time to move on at this point. Say the user enters valid positive integers like 3, 5 and 6, so 6 will be the maximum. You've got the right idea. So that's your solution. I guess it's not really complete. I forgot what's the formula to determine the highest. Do you want to describe what you've got there? Participant indicates they do not know how to determine the maximum. This variable initialise the variable number. Because it's of an integer. Alert is like a prompt for the user to enter 10 number. And this is a loop which I have not completed. It loops... I think it has to have a loop that goes through all the numbers that the user enters. And probably some formula to determine the highest number (which I don't know how). But it has to have a loop, I think. Because you've got to go through with them one-by-one to determine which is the highest. So if you had a bit more there, do you think your solution would solve the problem? Yes. If I had the formula in it as well. The next question is: are there any improvements that could be made? Finishing the loop, and then with a formula, and then another prompt, no not a prompt, an alert to tell which is the maximum. Let's go to the next one. [6:02] Have a read of that... What do you think the problem is asking this time? It asks to enter... I don't know what it asks... It asks the user to enter any positive integer from nought up to And then, it has to be a valid integer so that there's no floating point or what-so-ever I guess, then it will go through the program and then it will output the average, which is the sum of all the numbers divided by how many there are, which is, like, The sum of numbers all form 1 'till this amount, you plus it up, then you divide it by this [99999] because this is how many numbers there are. Right? Think so? Page 37

38 What do you think it means by: read in any number of positive integers? OK. It asks the user to enter... wrong, I'm all wrong... It asks the user to enter any number, which, the sum of those numbers comes up to So, read in the number of integers until the value is this [99999], meaning the user can enter any number, but the sum of all those numbers must come up to this amount. So where it says: until the value is encountered,...? Meaning all the numbers that have been entered, when you plus it up, it has to come to this amount. What does it mean, at the end, by output the average? Whatever numbers that are put in, so say there's 10 numbers that when you sum it all up, the integers that the user enters, when you plus it all up this is the amount, divide it by how many integers there were. Say 10, divide it by 99999, that's the average. Think so, gosh... There's your solution there, can you lead me through that? What does this part do? That initialises the average. It s the formula to get the average. Initialise number, because they need to enter number. And initialise sum, because sum is the formula for all the numbers; to plus up all the numbers. And then there's an alert to prompt the user to enter a number; actually it has to be a few numbers. And then there's a loop that says that... (while input is not equal to...). Hang on; I'm not really, really sure about the question there. It says read in any number of integers until the value is... (the value 9999 is encountered). Does it mean that... the user will enter any number from 9999 or does it mean that the user will any number that will sum up to 9999? Actually, neither. Neither!? Neither!? OK. Mistakes initialisation and declaration. The first was close. They can enter any number until they enter that particular number. So is that the one. Is that what the question is asking? Yeah. What you've got here in your solution [on paper] reflects that. OK... The loop says that... The loop means that, for every number that the user enters, it goes through every one of them until it sees that... No. For every number that's not 9999, it continues looping until it sees 9999, then it will stop. And then when it stops, the formula comes in. It sums up the numbers. I think I'm wrong. I'm not sure. It sums up the numbers and then from the sum it gets the average. So the sum of that number, divided by how many integers there are, until you get this one. And then you output the average. Where does your loop start and where does it end? It starts here... until if finds... Where in the code? Page 38

MITOCW watch?v=0jljzrnhwoi

MITOCW watch?v=0jljzrnhwoi MITOCW watch?v=0jljzrnhwoi The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To

More information

The Stack, Free Store, and Global Namespace

The Stack, Free Store, and Global Namespace Pointers This tutorial is my attempt at clarifying pointers for anyone still confused about them. Pointers are notoriously hard to grasp, so I thought I'd take a shot at explaining them. The more information

More information

PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between

PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between MITOCW Lecture 10A [MUSIC PLAYING] PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between all these high-level languages like Lisp and the query

More information

MITOCW ocw f99-lec07_300k

MITOCW ocw f99-lec07_300k MITOCW ocw-18.06-f99-lec07_300k OK, here's linear algebra lecture seven. I've been talking about vector spaces and specially the null space of a matrix and the column space of a matrix. What's in those

More information

MITOCW watch?v=se4p7ivcune

MITOCW watch?v=se4p7ivcune MITOCW watch?v=se4p7ivcune The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To

More information

Skill 1: Multiplying Polynomials

Skill 1: Multiplying Polynomials CS103 Spring 2018 Mathematical Prerequisites Although CS103 is primarily a math class, this course does not require any higher math as a prerequisite. The most advanced level of mathematics you'll need

More information

The following content is provided under a Creative Commons license. Your support

The following content is provided under a Creative Commons license. Your support MITOCW Recitation 4 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To make

More information

MITOCW watch?v=rvrkt-jxvko

MITOCW watch?v=rvrkt-jxvko MITOCW watch?v=rvrkt-jxvko The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To

More information

MITOCW watch?v=w_-sx4vr53m

MITOCW watch?v=w_-sx4vr53m MITOCW watch?v=w_-sx4vr53m The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high-quality educational resources for free. To

More information

MITOCW ocw f99-lec12_300k

MITOCW ocw f99-lec12_300k MITOCW ocw-18.06-f99-lec12_300k This is lecture twelve. OK. We've reached twelve lectures. And this one is more than the others about applications of linear algebra. And I'll confess. When I'm giving you

More information

Divisibility Rules and Their Explanations

Divisibility Rules and Their Explanations Divisibility Rules and Their Explanations Increase Your Number Sense These divisibility rules apply to determining the divisibility of a positive integer (1, 2, 3, ) by another positive integer or 0 (although

More information

It Might Be Valid, But It's Still Wrong Paul Maskens and Andy Kramek

It Might Be Valid, But It's Still Wrong Paul Maskens and Andy Kramek Seite 1 von 5 Issue Date: FoxTalk July 2000 It Might Be Valid, But It's Still Wrong Paul Maskens and Andy Kramek This month, Paul Maskens and Andy Kramek discuss the problems of validating data entry.

More information

Usability Test Report: Requesting Library Material 1

Usability Test Report: Requesting Library Material 1 Usability Test Report: Requesting Library Material 1 Summary Emily Daly and Kate Collins conducted usability testing on the processes of requesting library material. The test was conducted at the temporary

More information

Formal Methods of Software Design, Eric Hehner, segment 24 page 1 out of 5

Formal Methods of Software Design, Eric Hehner, segment 24 page 1 out of 5 Formal Methods of Software Design, Eric Hehner, segment 24 page 1 out of 5 [talking head] This lecture we study theory design and implementation. Programmers have two roles to play here. In one role, they

More information

5 R1 The one green in the same place so either of these could be green.

5 R1 The one green in the same place so either of these could be green. Page: 1 of 20 1 R1 Now. Maybe what we should do is write out the cases that work. We wrote out one of them really very clearly here. [R1 takes out some papers.] Right? You did the one here um where you

More information

MITOCW watch?v=zm5mw5nkzjg

MITOCW watch?v=zm5mw5nkzjg MITOCW watch?v=zm5mw5nkzjg The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To

More information

PROFESSOR: So far in this course we've been talking a lot about data abstraction. And remember the idea is that

PROFESSOR: So far in this course we've been talking a lot about data abstraction. And remember the idea is that MITOCW Lecture 4B [MUSIC-- "JESU, JOY OF MAN'S DESIRING" BY JOHANN SEBASTIAN BACH] PROFESSOR: So far in this course we've been talking a lot about data abstraction. And remember the idea is that we build

More information

The following content is provided under a Creative Commons license. Your support

The following content is provided under a Creative Commons license. Your support MITOCW Recitation 1 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high-quality educational resources for free. To make

More information

MITOCW watch?v=9h6muyzjms0

MITOCW watch?v=9h6muyzjms0 MITOCW watch?v=9h6muyzjms0 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To

More information

The following content is provided under a Creative Commons license. Your support

The following content is provided under a Creative Commons license. Your support MITOCW Lecture 23 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality, educational resources for free. To make a

More information

MITOCW watch?v=ytpjdnlu9ug

MITOCW watch?v=ytpjdnlu9ug MITOCW watch?v=ytpjdnlu9ug The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high-quality, educational resources for free.

More information

MITOCW watch?v=flgjisf3l78

MITOCW watch?v=flgjisf3l78 MITOCW watch?v=flgjisf3l78 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high-quality educational resources for free. To

More information

P1_L3 Operating Systems Security Page 1

P1_L3 Operating Systems Security Page 1 P1_L3 Operating Systems Security Page 1 that is done by the operating system. systems. The operating system plays a really critical role in protecting resources in a computer system. Resources such as

More information

The name of our class will be Yo. Type that in where it says Class Name. Don t hit the OK button yet.

The name of our class will be Yo. Type that in where it says Class Name. Don t hit the OK button yet. Mr G s Java Jive #2: Yo! Our First Program With this handout you ll write your first program, which we ll call Yo. Programs, Classes, and Objects, Oh My! People regularly refer to Java as a language that

More information

Formal Methods of Software Design, Eric Hehner, segment 1 page 1 out of 5

Formal Methods of Software Design, Eric Hehner, segment 1 page 1 out of 5 Formal Methods of Software Design, Eric Hehner, segment 1 page 1 out of 5 [talking head] Formal Methods of Software Engineering means the use of mathematics as an aid to writing programs. Before we can

More information

MITOCW watch?v=4dj1oguwtem

MITOCW watch?v=4dj1oguwtem MITOCW watch?v=4dj1oguwtem PROFESSOR: So it's time to examine uncountable sets. And that's what we're going to do in this segment. So Cantor's question was, are all sets the same size? And he gives a definitive

More information

Week - 01 Lecture - 03 Euclid's Algorithm for gcd. Let us continue with our running example of gcd to explore more issues involved with program.

Week - 01 Lecture - 03 Euclid's Algorithm for gcd. Let us continue with our running example of gcd to explore more issues involved with program. Programming, Data Structures and Algorithms in Python Prof. Madhavan Mukund Department of Computer Science and Engineering Indian Institute of Technology, Madras Week - 01 Lecture - 03 Euclid's Algorithm

More information

9 R1 Get another piece of paper. We re going to have fun keeping track of (inaudible). Um How much time do you have? Are you getting tired?

9 R1 Get another piece of paper. We re going to have fun keeping track of (inaudible). Um How much time do you have? Are you getting tired? Page: 1 of 14 1 R1 And this is tell me what this is? 2 Stephanie x times y plus x times y or hm? 3 R1 What are you thinking? 4 Stephanie I don t know. 5 R1 Tell me what you re thinking. 6 Stephanie Well.

More information

CONTENTS: What Is Programming? How a Computer Works Programming Languages Java Basics. COMP-202 Unit 1: Introduction

CONTENTS: What Is Programming? How a Computer Works Programming Languages Java Basics. COMP-202 Unit 1: Introduction CONTENTS: What Is Programming? How a Computer Works Programming Languages Java Basics COMP-202 Unit 1: Introduction Announcements Did you miss the first lecture? Come talk to me after class. If you want

More information

In our first lecture on sets and set theory, we introduced a bunch of new symbols and terminology.

In our first lecture on sets and set theory, we introduced a bunch of new symbols and terminology. Guide to and Hi everybody! In our first lecture on sets and set theory, we introduced a bunch of new symbols and terminology. This guide focuses on two of those symbols: and. These symbols represent concepts

More information

Blog post on updates yesterday and today:

Blog post on updates yesterday and today: Beta Bug Prioritization meeting IRC Transcript 12 November 2013 Meeting was held in IRC, on the #devmo channel. Meetings are weekly, every Tuesday at 17:00 UTC (10am PST) ok, everyone, we're ready to start

More information

Blitz2D Newbies: Definitive Guide to Types by MutteringGoblin

Blitz2D Newbies: Definitive Guide to Types by MutteringGoblin Blitz2D Newbies: Definitive Guide to Types by MutteringGoblin Types are probably the hardest thing to understand about Blitz Basic. If you're using types for the first time, you've probably got an uneasy

More information

Note: Please use the actual date you accessed this material in your citation.

Note: Please use the actual date you accessed this material in your citation. MIT OpenCourseWare http://ocw.mit.edu 18.06 Linear Algebra, Spring 2005 Please use the following citation format: Gilbert Strang, 18.06 Linear Algebra, Spring 2005. (Massachusetts Institute of Technology:

More information

The following content is provided under a Creative Commons license. Your support

The following content is provided under a Creative Commons license. Your support MITOCW Recitation 2 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high-quality educational resources for free. To make

More information

Most of the class will focus on if/else statements and the logical statements ("conditionals") that are used to build them. Then I'll go over a few

Most of the class will focus on if/else statements and the logical statements (conditionals) that are used to build them. Then I'll go over a few With notes! 1 Most of the class will focus on if/else statements and the logical statements ("conditionals") that are used to build them. Then I'll go over a few useful functions (some built into standard

More information

Subversion was not there a minute ago. Then I went through a couple of menus and eventually it showed up. Why is it there sometimes and sometimes not?

Subversion was not there a minute ago. Then I went through a couple of menus and eventually it showed up. Why is it there sometimes and sometimes not? Subversion was not there a minute ago. Then I went through a couple of menus and eventually it showed up. Why is it there sometimes and sometimes not? Trying to commit a first file. There is nothing on

More information

PROFESSOR: Well, yesterday we learned a bit about symbolic manipulation, and we wrote a rather stylized

PROFESSOR: Well, yesterday we learned a bit about symbolic manipulation, and we wrote a rather stylized MITOCW Lecture 4A PROFESSOR: Well, yesterday we learned a bit about symbolic manipulation, and we wrote a rather stylized program to implement a pile of calculus rule from the calculus book. Here on the

More information

Hi everyone. Starting this week I'm going to make a couple tweaks to how section is run. The first thing is that I'm going to go over all the slides

Hi everyone. Starting this week I'm going to make a couple tweaks to how section is run. The first thing is that I'm going to go over all the slides Hi everyone. Starting this week I'm going to make a couple tweaks to how section is run. The first thing is that I'm going to go over all the slides for both problems first, and let you guys code them

More information

Slide 1 Side Effects Duration: 00:00:53 Advance mode: Auto

Slide 1 Side Effects Duration: 00:00:53 Advance mode: Auto Side Effects The 5 numeric operators don't modify their operands Consider this example: int sum = num1 + num2; num1 and num2 are unchanged after this The variable sum is changed This change is called a

More information

MITOCW watch?v=kz7jjltq9r4

MITOCW watch?v=kz7jjltq9r4 MITOCW watch?v=kz7jjltq9r4 PROFESSOR: We're going to look at the most fundamental of all mathematical data types, namely sets, and let's begin with the definitions. So informally, a set is a collection

More information

The following content is provided under a Creative Commons license. Your support

The following content is provided under a Creative Commons license. Your support MITOCW Lecture 10 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high-quality educational resources for free. To make a

More information

PROFESSOR: Well, now that we've given you some power to make independent local state and to model objects,

PROFESSOR: Well, now that we've given you some power to make independent local state and to model objects, MITOCW Lecture 5B PROFESSOR: Well, now that we've given you some power to make independent local state and to model objects, I thought we'd do a bit of programming of a very complicated kind, just to illustrate

More information

(Refer Slide Time: 00:51)

(Refer Slide Time: 00:51) Programming, Data Structures and Algorithms Prof. Shankar Balachandran Department of Computer Science and Engineering Indian Institute Technology, Madras Module 10 E Lecture 24 Content Example: factorial

More information

What's the Slope of a Line?

What's the Slope of a Line? What's the Slope of a Line? These lines look pretty different, don't they? Lines are used to keep track of lots of info -- like how much money a company makes. Just off the top of your head, which of the

More information

MITOCW watch?v=yarwp7tntl4

MITOCW watch?v=yarwp7tntl4 MITOCW watch?v=yarwp7tntl4 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality, educational resources for free.

More information

BBC Learning English Face up to Phrasals Mark's Mistake

BBC Learning English Face up to Phrasals Mark's  Mistake BBC Learning English Face up to Phrasals Mark's Email Mistake Episode 1: Email Fun? Mark: Hey Ali, did you check out that email I sent you the one about stupid Peter, saying how stupid he is? Oh dear.

More information

Problem Solving through Programming In C Prof. Anupam Basu Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur

Problem Solving through Programming In C Prof. Anupam Basu Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Problem Solving through Programming In C Prof. Anupam Basu Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture 18 Switch Statement (Contd.) And Introduction to

More information

In today s video I'm going show you how you can set up your own online business using marketing and affiliate marketing.

In today s video I'm going show you how you can set up your own online business using  marketing and affiliate marketing. Hey guys, Diggy here with a summary of part two of the four part free video series. If you haven't watched the first video yet, please do so (https://sixfigureinc.com/intro), before continuing with this

More information

This lesson is part 5 of 5 in a series. You can go to Invoice, Part 1: Free Shipping if you'd like to start from the beginning.

This lesson is part 5 of 5 in a series. You can go to Invoice, Part 1: Free Shipping if you'd like to start from the beginning. Excel Formulas Invoice, Part 5: Data Validation "Oh, hey. Um we noticed an issue with that new VLOOKUP function you added for the shipping options. If we don't type the exact name of the shipping option,

More information

How To Make 3-50 Times The Profits From Your Traffic

How To Make 3-50 Times The Profits From Your Traffic 1 How To Make 3-50 Times The Profits From Your Traffic by Chris Munch of Munchweb.com Copyright Munchweb.com. All Right Reserved. This work cannot be copied, re-published, or re-distributed. No re-sell

More information

Lesson 3 Transcript: Part 2 of 2 Tools & Scripting

Lesson 3 Transcript: Part 2 of 2 Tools & Scripting Lesson 3 Transcript: Part 2 of 2 Tools & Scripting Slide 1: Cover Welcome to lesson 3 of the DB2 on Campus Lecture Series. Today we are going to talk about tools and scripting. And this is part 2 of 2

More information

Designing a Database -- Understanding Relational Design

Designing a Database -- Understanding Relational Design Designing a Database -- Understanding Relational Design Contents Overview The Database Design Process Steps in Designing a Database Common Design Problems Determining the Purpose Determining the Tables

More information

BEGINNER PHP Table of Contents

BEGINNER PHP Table of Contents Table of Contents 4 5 6 7 8 9 0 Introduction Getting Setup Your first PHP webpage Working with text Talking to the user Comparison & If statements If & Else Cleaning up the game Remembering values Finishing

More information

printf( Please enter another number: ); scanf( %d, &num2);

printf( Please enter another number: ); scanf( %d, &num2); CIT 593 Intro to Computer Systems Lecture #13 (11/1/12) Now that we've looked at how an assembly language program runs on a computer, we're ready to move up a level and start working with more powerful

More information

MITOCW ocw apr k

MITOCW ocw apr k MITOCW ocw-6.033-32123-06apr2005-220k Good afternoon. So we're going to continue our discussion about atomicity and how to achieve atomicity. And today the focus is going to be on implementing this idea

More information

Instructor: Craig Duckett. Lecture 04: Thursday, April 5, Relationships

Instructor: Craig Duckett. Lecture 04: Thursday, April 5, Relationships Instructor: Craig Duckett Lecture 04: Thursday, April 5, 2018 Relationships 1 Assignment 1 is due NEXT LECTURE 5, Tuesday, April 10 th in StudentTracker by MIDNIGHT MID-TERM EXAM is LECTURE 10, Tuesday,

More information

CS 2505 Computer Organization I Test 1. Do not start the test until instructed to do so!

CS 2505 Computer Organization I Test 1. Do not start the test until instructed to do so! Instructions: Print your name in the space provided below. This examination is closed book and closed notes, aside from the permitted one-page formula sheet. No calculators or other electronic devices

More information

The following content is provided under a Creative Commons license. Your support

The following content is provided under a Creative Commons license. Your support MITOCW Lecture 2 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To make a donation

More information

Close Your File Template

Close Your File Template In every sale there is always a scenario where I can t get someone to respond. No matter what I do. I can t get an answer from them. When people stop responding I use the Permission To. This is one of

More information

So the UI needs to change when the button changes. When the button becomes submit it needs to change color and get bigger.

So the UI needs to change when the button changes. When the button becomes submit it needs to change color and get bigger. Things to improve in the user interface. The bottom right button. In some screens it is continue and in other screens it is submit. The problem is that the user gets in the habit of simply always clicking

More information

Troubleshooting Maple Worksheets: Common Problems

Troubleshooting Maple Worksheets: Common Problems Troubleshooting Maple Worksheets: Common Problems So you've seen plenty of worksheets that work just fine, but that doesn't always help you much when your worksheet isn't doing what you want it to. This

More information

So on the survey, someone mentioned they wanted to work on heaps, and someone else mentioned they wanted to work on balanced binary search trees.

So on the survey, someone mentioned they wanted to work on heaps, and someone else mentioned they wanted to work on balanced binary search trees. So on the survey, someone mentioned they wanted to work on heaps, and someone else mentioned they wanted to work on balanced binary search trees. According to the 161 schedule, heaps were last week, hashing

More information

MITOCW MIT6_172_F10_lec18_300k-mp4

MITOCW MIT6_172_F10_lec18_300k-mp4 MITOCW MIT6_172_F10_lec18_300k-mp4 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for

More information

Decisions, Decisions. Testing, testing C H A P T E R 7

Decisions, Decisions. Testing, testing C H A P T E R 7 C H A P T E R 7 In the first few chapters, we saw some of the basic building blocks of a program. We can now make a program with input, processing, and output. We can even make our input and output a little

More information

Introduction to Programming in C Department of Computer Science and Engineering. Lecture No. #17. Loops: Break Statement

Introduction to Programming in C Department of Computer Science and Engineering. Lecture No. #17. Loops: Break Statement Introduction to Programming in C Department of Computer Science and Engineering Lecture No. #17 Loops: Break Statement (Refer Slide Time: 00:07) In this session we will see one more feature that is present

More information

(Refer Slide Time 3:31)

(Refer Slide Time 3:31) Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology Madras Lecture - 5 Logic Simplification In the last lecture we talked about logic functions

More information

Usability Test Report: Bento results interface 1

Usability Test Report: Bento results interface 1 Usability Test Report: Bento results interface 1 Summary Emily Daly and Ian Sloat conducted usability testing on the functionality of the Bento results interface. The test was conducted at the temporary

More information

How to approach a computational problem

How to approach a computational problem How to approach a computational problem A lot of people find computer programming difficult, especially when they first get started with it. Sometimes the problems are problems specifically related to

More information

Well, I hope you appreciate that we have inducted you into some real magic, the magic of

Well, I hope you appreciate that we have inducted you into some real magic, the magic of MITOCW Lecture 9B Well, I hope you appreciate that we have inducted you into some real magic, the magic of building languages, really building new languages. What have we looked at? We've looked at an

More information

LOOPS. Repetition using the while statement

LOOPS. Repetition using the while statement 1 LOOPS Loops are an extremely useful feature in any programming language. They allow you to direct the computer to execute certain statements more than once. In Python, there are two kinds of loops: while

More information

How to Improve Your Campaign Conversion Rates

How to Improve Your  Campaign Conversion Rates How to Improve Your Email Campaign Conversion Rates Chris Williams Author of 7 Figure Business Models How to Exponentially Increase Conversion Rates I'm going to teach you my system for optimizing an email

More information

Amber Weyland: [to cameraman] Just hold it there so we can see Mollie.

Amber Weyland: [to cameraman] Just hold it there so we can see Mollie. Interview Transcript Interviewer: Amber Weyland Interviewee: Mollie Hummer Cameraman: Christopher Smith [friend to both] Date: March 22, 2010 Beginning time of interview: 2:30pm End time of interview:

More information

APPENDIX B. Fortran Hints

APPENDIX B. Fortran Hints APPENDIX B Fortran Hints This appix contains hints on how to find errors in your programs, and how to avoid some common Fortran errors in the first place. The basics on how to invoke the Fortran compiler

More information

Module 6. Campaign Layering

Module 6.  Campaign Layering Module 6 Email Campaign Layering Slide 1 Hello everyone, it is Andy Mackow and in today s training, I am going to teach you a deeper level of writing your email campaign. I and I am calling this Email

More information

Instructor: Craig Duckett. Lecture 03: Tuesday, April 3, 2018 SQL Sorting, Aggregates and Joining Tables

Instructor: Craig Duckett. Lecture 03: Tuesday, April 3, 2018 SQL Sorting, Aggregates and Joining Tables Instructor: Craig Duckett Lecture 03: Tuesday, April 3, 2018 SQL Sorting, Aggregates and Joining Tables 1 Assignment 1 is due LECTURE 5, Tuesday, April 10 th, 2018 in StudentTracker by MIDNIGHT MID-TERM

More information

Intro. Scheme Basics. scm> 5 5. scm>

Intro. Scheme Basics. scm> 5 5. scm> Intro Let s take some time to talk about LISP. It stands for LISt Processing a way of coding using only lists! It sounds pretty radical, and it is. There are lots of cool things to know about LISP; if

More information

Design and Analysis of Algorithms Prof. Madhavan Mukund Chennai Mathematical Institute. Week 02 Module 06 Lecture - 14 Merge Sort: Analysis

Design and Analysis of Algorithms Prof. Madhavan Mukund Chennai Mathematical Institute. Week 02 Module 06 Lecture - 14 Merge Sort: Analysis Design and Analysis of Algorithms Prof. Madhavan Mukund Chennai Mathematical Institute Week 02 Module 06 Lecture - 14 Merge Sort: Analysis So, we have seen how to use a divide and conquer strategy, we

More information

The following content is provided under a Creative Commons license. Your support

The following content is provided under a Creative Commons license. Your support MITOCW Lecture 8 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To make a donation

More information

Intro. Speed V Growth

Intro. Speed V Growth Intro Good code is two things. It's elegant, and it's fast. In other words, we got a need for speed. We want to find out what's fast, what's slow, and what we can optimize. First, we'll take a tour of

More information

CSE143 Notes for Monday, 4/25/11

CSE143 Notes for Monday, 4/25/11 CSE143 Notes for Monday, 4/25/11 I began a new topic: recursion. We have seen how to write code using loops, which a technique called iteration. Recursion an alternative to iteration that equally powerful.

More information

Control Structures. Code can be purely arithmetic assignments. At some point we will need some kind of control or decision making process to occur

Control Structures. Code can be purely arithmetic assignments. At some point we will need some kind of control or decision making process to occur Control Structures Code can be purely arithmetic assignments At some point we will need some kind of control or decision making process to occur C uses the if keyword as part of it s control structure

More information

CS103 Spring 2018 Mathematical Vocabulary

CS103 Spring 2018 Mathematical Vocabulary CS103 Spring 2018 Mathematical Vocabulary You keep using that word. I do not think it means what you think it means. - Inigo Montoya, from The Princess Bride Consider the humble while loop in most programming

More information

Transcriber(s): Aboelnaga, Eman Verifier(s): Yedman, Madeline Date Transcribed: Fall 2010 Page: 1 of 9

Transcriber(s): Aboelnaga, Eman Verifier(s): Yedman, Madeline Date Transcribed: Fall 2010 Page: 1 of 9 Page: 1 of 9 0:00 1 R1 The color s not going to show a little bit, but okay. Okay. So, um, a plus b quantity cubed, you said, means Stephanie a plus b times a plus b times a plus b /R1 3 R1 Okay, so you

More information

The following content is provided under a Creative Commons license. Your support

The following content is provided under a Creative Commons license. Your support MITOCW Lecture 9 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high-quality educational resources for free. To make a donation

More information

2SKILL. Variables Lesson 6. Remembering numbers (and other stuff)...

2SKILL. Variables Lesson 6. Remembering numbers (and other stuff)... Remembering numbers (and other stuff)... Let s talk about one of the most important things in any programming language. It s called a variable. Don t let the name scare you. What it does is really simple.

More information

Hello World! Computer Programming for Kids and Other Beginners. Chapter 1. by Warren Sande and Carter Sande. Copyright 2009 Manning Publications

Hello World! Computer Programming for Kids and Other Beginners. Chapter 1. by Warren Sande and Carter Sande. Copyright 2009 Manning Publications Hello World! Computer Programming for Kids and Other Beginners by Warren Sande and Carter Sande Chapter 1 Copyright 2009 Manning Publications brief contents Preface xiii Acknowledgments xix About this

More information

It s possible to get your inbox to zero and keep it there, even if you get hundreds of s a day.

It s possible to get your  inbox to zero and keep it there, even if you get hundreds of  s a day. It s possible to get your email inbox to zero and keep it there, even if you get hundreds of emails a day. It s not super complicated, though it does take effort and discipline. Many people simply need

More information

Civil Engineering Computation

Civil Engineering Computation Civil Engineering Computation First Steps in VBA Homework Evaluation 2 1 Homework Evaluation 3 Based on this rubric, you may resubmit Homework 1 and Homework 2 (along with today s homework) by next Monday

More information

MITOCW watch?v=sdw8_0rdzuw

MITOCW watch?v=sdw8_0rdzuw MITOCW watch?v=sdw8_0rdzuw PROFESSOR: Directed acyclic graphs are a special class of graphs that really have and warrant a theory of their own. Of course, "directed acyclic graphs" is lot of syllables,

More information

MITOCW MIT6_01SC_rec2_300k.mp4

MITOCW MIT6_01SC_rec2_300k.mp4 MITOCW MIT6_01SC_rec2_300k.mp4 KENDRA PUGH: Hi. I'd like to talk to you today about inheritance as a fundamental concept in object oriented programming, its use in Python, and also tips and tricks for

More information

Why you should never ask favors from a graphic designer:

Why you should never ask favors from a graphic designer: Why you should never ask favors from a graphic designer: Story goes : Shannon (the secretary) has lost her cat and has asked David (the graphic designer) to help with a lost poster. This is their email

More information

6 Stephanie Well. It s six, because there s six towers.

6 Stephanie Well. It s six, because there s six towers. Page: 1 of 10 1 R1 So when we divided by two all this stuff this is the row we ended up with. 2 Stephanie Um hm. 3 R1 Isn t that right? We had a row of six. Alright. Now before doing it see if you can

More information

Binary, Hexadecimal and Octal number system

Binary, Hexadecimal and Octal number system Binary, Hexadecimal and Octal number system Binary, hexadecimal, and octal refer to different number systems. The one that we typically use is called decimal. These number systems refer to the number of

More information

Appendix: Common Errors

Appendix: Common Errors Appendix: Common Errors Appendix 439 This appendix offers a brief overview of common errors that occur in Processing, what those errors mean and why they occur. The language of error messages can often

More information

Chapter 2.6: Testing and running a solution

Chapter 2.6: Testing and running a solution Chapter 2.6: Testing and running a solution 2.6 (a) Types of Programming Errors When programs are being written it is not surprising that mistakes are made, after all they are very complicated. There are

More information

6.001 Notes: Section 6.1

6.001 Notes: Section 6.1 6.001 Notes: Section 6.1 Slide 6.1.1 When we first starting talking about Scheme expressions, you may recall we said that (almost) every Scheme expression had three components, a syntax (legal ways of

More information

Using GitHub to Share with SparkFun a

Using GitHub to Share with SparkFun a Using GitHub to Share with SparkFun a learn.sparkfun.com tutorial Available online at: http://sfe.io/t52 Contents Introduction Gitting Started Forking a Repository Committing, Pushing and Pulling Syncing

More information

If Statements, For Loops, Functions

If Statements, For Loops, Functions Fundamentals of Programming If Statements, For Loops, Functions Table of Contents Hello World Types of Variables Integers and Floats String Boolean Relational Operators Lists Conditionals If and Else Statements

More information

Lesson 4: Who Goes There?

Lesson 4: Who Goes There? Lesson 4: Who Goes There? In this lesson we will write a program that asks for your name and a password, and prints a secret message if you give the right password. While doing this we will learn: 1. What

More information

(Refer Slide Time 04:53)

(Refer Slide Time 04:53) Programming and Data Structure Dr.P.P.Chakraborty Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture 26 Algorithm Design -1 Having made a preliminary study

More information