id: cf163c4559bf4cc79de5221384c022fb
parent_id: 
item_type: 1
item_id: f5204a3054834447ac497becbf630cbc
item_updated_time: 1764345484351
title_diff: "[{\"diffs\":[[1,\"Debugging under IDLE\"]],\"start1\":0,\"start2\":0,\"length1\":0,\"length2\":20}]"
body_diff: "[{\"diffs\":[[1,\"<html>\\\r\\\n<head>\\\r\\\n  <title>Debugging under IDLE</title>\\\r\\\n  <basefont face=\\\"微软雅黑\\\" size=\\\"2\\\" />\\\r\\\n  <meta http-equiv=\\\"Content-Type\\\" content=\\\"text/html;charset=utf-8\\\" />\\\r\\\n  <meta name=\\\"exporter-version\\\" content=\\\"YXBJ Windows/608924 (zh-CN, DDL); Windows/10.0.0 (Win64); EDAMVersion=V2;\\\"/>\\\r\\\n  <style>\\\r\\\n\\tbody, td {\\\r\\\n\\t  font-family: 微软雅黑;\\\r\\\n\\t  font-size: 12pt;\\\r\\\n\\t}\\\r\\\n  </style>\\\r\\\n</head>\\\r\\\n<body>\\\r\\\n<a name=\\\"19390\\\"></a>\\\r\\\n<h1>Debugging under IDLE</h1>\\\r\\\n\\\r\\\n<div>\\\n<span><div><br/></div><div style=\\\"font-size: 16px; min-width: 100%;\\\"><div style=\\\"font-size: inherit; vertical-align: baseline;\\\"><div style=\\\"vertical-align: baseline; font-size: 16px; text-align: left;\\\"><div style=\\\"margin: 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><div style=\\\"margin: 0px auto; padding: 0px 2em; border: 0px; font-size: inherit; vertical-align: baseline; z-index: 200; position: relative; width: 36em;\\\"><div style=\\\"margin: 0px 25px 0px -25px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; position: relative;\\\"><div style=\\\"margin: 0px; padding: 0px 0px 9em; border: 0px; font-size: inherit; vertical-align: baseline; position: relative;\\\"><div style=\\\"margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><div style=\\\"margin: 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; position: relative;\\\"><div style=\\\"margin: 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><h2 style=\\\"background-color: transparent; margin: 35px 0px 1.5em; padding: 0px; border: 0px; vertical-align: baseline; text-align: left; font-size: 30px;\\\"><span style=\\\"font-size: 30px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 35px; font-weight: bold;\\\">Debugging under IDLE</span></h2><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">IDLE has a debugger built into it. It is very useful for stepping through a program and watching the variables change values.</span></div><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">Start IDLE and open</span> <a href=\\\"https://www.cs.uky.edu/~keen/help/debug-tutorial/volume.py\\\" style=\\\"margin: 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; font-family: &quot;PT Serif&quot;; line-height: 1.5em; color: rgb(6, 85, 136); text-decoration: none;\\\" target=\\\"_blank\\\">this</a> <span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">program source file.</span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 1em 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; text-align: center;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\"><img src=\\\":/89b943849eb8452bb4af4a16f30f05b8\\\" type=\\\"image/png\\\" data-filename=\\\"Image.png\\\" height=\\\"411\\\" style=\\\"margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;border-color:rgb(31, 9, 9);display:block;max-width:100%;\\\" width=\\\"576\\\"/></span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><hr style=\\\"background-color: transparent; border-top: none; border-right: none; border-bottom: 1px solid; border-left: none;\\\"/><div style=\\\"margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\"><span style=\\\"background-color: rgb(255, 250, 165);-evernote-highlight:true;\\\">In the Shell window, click on the Debug menu option at the top and then on Debugger.</span> You will see a &quot;Debug Control&quot; window like this</span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 1em 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; text-align: center;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\"><img src=\\\":/6d250ad404a8448e8cfe9c7c90ff2d88\\\" type=\\\"image/png\\\" data-filename=\\\"Image.png\\\" height=\\\"403\\\" style=\\\"margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;border-color:rgb(31, 9, 9);display:block;max-width:100%;\\\" width=\\\"576\\\"/></span></div><div style=\\\"background-color: transparent;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">Notice that the Shell shows &quot;[DEBUG ON]&quot;.</span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><hr style=\\\"background-color: transparent; border-top: none; border-right: none; border-bottom: 1px solid; border-left: none;\\\"/><div style=\\\"margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">For the debugger to be most useful, you need to set a breakpoint in your source code before you start running the program. A breakpoint is a marker on your code that tells the debugger &quot;run to this point at normal speed, then pause and let the human have control&quot;. You can have many of them; in more complex programs you would need them at different places. <span style=\\\"background-color: rgb(255, 250, 165);-evernote-highlight:true;\\\">RIGHT click on a line of your source and choose &quot;set breakpoint&quot;.</span></span></div><div style=\\\"background-color: transparent; margin: 1em 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; text-align: center;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\"><img src=\\\":/9213bec2d10b4d6b96434d90cc925508\\\" type=\\\"image/png\\\" data-filename=\\\"Image.png\\\" height=\\\"403\\\" style=\\\"margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;border-color:rgb(31, 9, 9);display:block;max-width:100%;\\\" width=\\\"576\\\"/></span></div><div style=\\\"background-color: transparent;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">The background of the line you click on turns yellow to show the line marked with the breakpoint.</span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><hr style=\\\"background-color: transparent; border-top: none; border-right: none; border-bottom: 1px solid; border-left: none;\\\"/><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 1em 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; text-align: center;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\"><img src=\\\":/0c1ff7db608349919a1c0ab4db40bfe4\\\" type=\\\"image/png\\\" data-filename=\\\"Image.png\\\" height=\\\"390\\\" style=\\\"margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;border-color:rgb(31, 9, 9);display:block;max-width:100%;\\\" width=\\\"576\\\"/></span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">If you don't put any breakpoints in your source, when you run it with the debugger on, it will pause at the first line of executable code (may be an import statement or a call to main()) but then will run your program normally (i.e. with no pauses).</span></div><hr style=\\\"background-color: transparent; border-top: none; border-right: none; border-bottom: 1px solid; border-left: none;\\\"/><div style=\\\"margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em; background-color: rgb(255, 250, 165);-evernote-highlight:true;\\\">Now run the program with F5 as usual.</span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 1em 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; text-align: center;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\"><img src=\\\":/d4987c4562ac4a19aad751e74abaf176\\\" type=\\\"image/png\\\" data-filename=\\\"Image.png\\\" height=\\\"358\\\" style=\\\"margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;border-color:rgb(31, 9, 9);display:block;max-width:100%;\\\" width=\\\"576\\\"/></span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">Note that the Debug Control window is opened and that the blue line states that the line &quot;from math import pi&quot; is ready to be executed (the 7 is for line number 7 in the source file).</span></div><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">From this point you can click the</span> <span style=\\\"font-size: inherit; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em; font-weight: bold; margin: 0px; padding: 0px; border: 0px; vertical-align: baseline;\\\">Go</span> <span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">button near the top of the window. This will make the program run at normal speed until a breakpoint is encountered (or input is requested or the program finishes). You can also use the</span> <span style=\\\"font-size: inherit; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em; font-weight: bold; margin: 0px; padding: 0px; border: 0px; vertical-align: baseline;\\\">Step</span> <span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">button to step through your code, one line at a time. This button is used quite a lot. If the line being stepped through has a function call, execution will go to the first line of the function definition (you are &quot;stepping into&quot; the function). If the line being stepped through doesn't have a function call, the line is executed. In either case, then control goes back to the human.</span></div><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">When you execute a line that has input in it, the debugger seems to shut down but it has not. If you bring up the Shell window you can see that the program is waiting for input. Make sure your cursor is in the right place on the window and give it some input and press Enter as usual.</span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 1em 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; text-align: center;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\"><img src=\\\":/f523bc8901d44713a2804818d1fdd4ea\\\" type=\\\"image/png\\\" data-filename=\\\"Image.png\\\" height=\\\"363\\\" style=\\\"margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;border-color:rgb(31, 9, 9);display:block;max-width:100%;\\\" width=\\\"576\\\"/></span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">There are several things to note about this picture. The Shell window is in the background, it shows that the user entered 23 and pressed Enter. The Debug Control window shows that execution has moved on to the next line of code. Also, at the bottom of that window there is a pane that says &quot;Locals&quot; and it shows the value of radius to be '23'. This is useful in several ways. It shows the values of variables as they change, and it shows the</span> <span style=\\\"font-size: inherit; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em; font-weight: bold; margin: 0px; padding: 0px; border: 0px; vertical-align: baseline;\\\">types</span> <span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">of variables. Note that the value of radius has quotes around it. This means that it is a string value.</span></div><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">Click the</span> <span style=\\\"font-size: inherit; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em; font-weight: bold; margin: 0px; padding: 0px; border: 0px; vertical-align: baseline;\\\">Step</span> <span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">button again.</span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 1em 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; text-align: center;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\"><img src=\\\":/d114690d5ae74fb69fd31475750ca07f\\\" type=\\\"image/png\\\" data-filename=\\\"Image.png\\\" height=\\\"376\\\" style=\\\"margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;border-color:rgb(31, 9, 9);display:block;max-width:100%;\\\" width=\\\"576\\\"/></span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">Note that the new variable height has been created and has a value of '14'.</span></div><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">Click the</span> <span style=\\\"font-size: inherit; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em; font-weight: bold; margin: 0px; padding: 0px; border: 0px; vertical-align: baseline;\\\">Step</span> <span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">button again.</span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 1em 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; text-align: center;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\"><img src=\\\":/7292503f446741428346c0ddd15baf6c\\\" type=\\\"image/png\\\" data-filename=\\\"Image.png\\\" height=\\\"372\\\" style=\\\"margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;border-color:rgb(31, 9, 9);display:block;max-width:100%;\\\" width=\\\"576\\\"/></span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">Notice that there is an error in the run of the program at this point (the yellow bar in the Debug Control window). The interpreter is saying that it cannot multiply &quot;sequence by non-int of type 'float'&quot;. What it means is that the two input variables are of the wrong type to be combined with numeric types. This has to be corrected before any more debugging takes place. This is fixed by using the eval function in the two input statements.</span></div><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">&quot;You can only toggle the debugger when idle&quot; If you get this message in a window when you try to turn the debugger on, try clicking on the</span> <span style=\\\"font-size: inherit; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em; font-weight: bold; margin: 0px; padding: 0px; border: 0px; vertical-align: baseline;\\\">Quit</span> <span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">button in the Debug Control window. If that does not help, try shutting down the program file and reopening it. If that does not help, shut down Python completely and restart it from scratch.</span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 1em 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; text-align: center;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\"><img src=\\\":/a302a0a45d714f9cbbccc43ddfb2a90d\\\" type=\\\"image/png\\\" data-filename=\\\"Image.png\\\" height=\\\"375\\\" style=\\\"margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;border-color:rgb(31, 9, 9);display:block;max-width:100%;\\\" width=\\\"576\\\"/></span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">Note that the bugs in the input statements have been fixed with the addition of &quot;eval&quot;. The breakpoint was put in again. Breakpoint locations are not saved with the program; they have to be set again for every debugging session.</span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 1em 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; text-align: center;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\"><img src=\\\":/9bedd1df60a64e1484a28d96339e376d\\\" type=\\\"image/jpeg\\\" data-filename=\\\"fixed-bug.jpg\\\" height=\\\"323\\\" style=\\\"margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;border-color:rgb(31, 9, 9);display:block;max-width:100%;\\\" width=\\\"576\\\"/></span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">Note the type of the Local variables in this image. They don't have the quotes around the values any more! They are numbers now.</span></div><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">As you step through the program one statement at a time, you can see more variables get values. When we come to the next bug you can see that the variable Pi is not the same as the variable pi, which is defined in the math library. This bug would need to be fixed, then the debugging would continue.</span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 1em 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; text-align: center;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\"><img src=\\\":/9871841253f841208a5eadeb8a204f6e\\\" type=\\\"image/png\\\" data-filename=\\\"Image.png\\\" height=\\\"374\\\" style=\\\"margin:0px;padding:0px;border:0px;font:inherit;vertical-align:baseline;border-color:rgb(31, 9, 9);display:block;max-width:100%;\\\" width=\\\"576\\\"/></span></div><p style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline;\\\"></p><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">So the process of using the debugger involves</span></div><ul style=\\\"background-color: transparent; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; margin: -1em 0px 1.5em 1.5em; list-style: disc;\\\"><li style=\\\"margin: 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; list-style-type: inherit; list-style-position: outside;\\\"><div><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">setting breakpoints</span></div></li><li style=\\\"margin: 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; list-style-type: inherit; list-style-position: outside;\\\"><div><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">stepping through the source code one line at a time</span></div></li><li style=\\\"margin: 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; list-style-type: inherit; list-style-position: outside;\\\"><div><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">inspecting the values of variables as they change</span></div></li><li style=\\\"margin: 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; list-style-type: inherit; list-style-position: outside;\\\"><div><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">making corrections to the source as bugs are found</span></div></li><li style=\\\"margin: 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; list-style-type: inherit; list-style-position: outside;\\\"><div><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">rerunning the program to make sure the fixes are correct</span></div></li></ul><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">Explanations of a few other things in the Debug Control window</span></div><ul style=\\\"background-color: transparent; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; margin: -1em 0px 1.5em 1.5em; list-style: disc;\\\"><li style=\\\"margin: 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; list-style-type: inherit; list-style-position: outside;\\\"><div><span style=\\\"font-size: inherit; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em; font-weight: bold; margin: 0px; padding: 0px; border: 0px; vertical-align: baseline;\\\">Over</span> <span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">means that if the statement to be executed has a function call in it, go off and do the function call without showing any details of the execution or variables, then return and give the human control again, &quot;step over the function&quot;</span></div></li><li style=\\\"margin: 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; list-style-type: inherit; list-style-position: outside;\\\"><div><span style=\\\"font-size: inherit; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em; font-weight: bold; margin: 0px; padding: 0px; border: 0px; vertical-align: baseline;\\\">Out</span> <span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">assumes you are in some function's code, finish execution of the function at normal speed, return from the function and then give the human control again, &quot;step out of the function&quot;</span></div></li><li style=\\\"margin: 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; list-style-type: inherit; list-style-position: outside;\\\"><div><span style=\\\"font-size: inherit; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em; font-weight: bold; margin: 0px; padding: 0px; border: 0px; vertical-align: baseline;\\\">Quit</span> <span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">stops the execution of the entire program</span></div></li></ul></div></div></div><div style=\\\"background-color: transparent; margin: 0px 0px 1.5em; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; position: absolute; top: -1000px; left: -1000px;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1.5em;\\\">Measure</span></div><div style=\\\"background-color: transparent; margin: 0px; padding: 0px; border: 0px; font-size: inherit; vertical-align: baseline; position: absolute; top: -1000px; left: -1000px;\\\"><span style=\\\"font-size: 16px; color: rgb(31, 9, 9); font-family: &quot;PT Serif&quot;; line-height: 1;\\\">Measure</span></div></div></div></div></div></div></div></div><div><br/></div></span>\\\n</div></body></html>\\u0000\"]],\"start1\":0,\"start2\":0,\"length1\":0,\"length2\":31084}]"
metadata_diff: {"new":{"id":"f5204a3054834447ac497becbf630cbc","parent_id":"061de1401cfc4cfaadf6e74e015970e9","latitude":"0.00000000","longitude":"0.00000000","altitude":"0.0000","author":"","source_url":"","is_todo":0,"todo_due":0,"todo_completed":0,"source":"joplin-desktop","source_application":"net.cozic.joplin-desktop","application_data":"","order":1764345716801,"markup_language":2,"is_shared":0,"share_id":"","conflict_original_id":"","master_key_id":"","user_data":"","deleted_time":0},"deleted":[]}
encryption_cipher_text: 
encryption_applied: 0
updated_time: 2025-11-28T16:12:36.638Z
created_time: 2025-11-28T16:12:36.638Z
type_: 13