Designing Solutions Through Programming block 1 Lesson Notes - October 16 2017

From Computer Science Wiki

Target.png Our Big Idea[edit]


The function of every web application system is to accept data, process data and output information. Effective design of interdependent components results in useful function.


Class plan.png What are we going to learn today?[edit]

Hello Class!

By the end of class you should say:



<?php

/* This file helps 9th and 10th grade (15 and 16 years old) students understand pragmatic and practical aspects of arrays as used in the PHP programming language.  
*/

// this is where we define an array:

$classes=["fighter","cleric","magic user","barbarian","monk"];
echo "<hr>";

/* this is how we "dump" an array to see it (blech, ugly). When we dump an array we see the index, the type and the element. Take a look at the sample of part of var_dump below: 

... [0]=> string(7) "fighter" [1]=> string(6) "cleric"...

We can see at index zero we have a string which is 7 characters, "fighter".  At index one we have a string which is 6 characters, "cleric"

*/

var_dump($classes);
echo "<hr>";

// this is how we access one element in an array. In this case we are selecting the element at index 2

echo $classes[2];
echo "<hr>";

// this is how we count elements in an array. 

echo count($classes);

echo "<hr>";

// this is how we ADD something to an array

$classes[] = "Archer";
var_dump($classes);
echo "<hr>";

// this is how we delete an item from an array. 

unset($classes[1]);
var_dump($classes);
echo "<hr>";

// We often loop through an array. This is also called iterating through an array.

foreach ($classes as $i) {

    echo "$i is an item in our array<br>";
    # Looping through an array is a very powerful technique, especially when we combine PHP and HTML.
    # echo "Please type a name for a $i : <input type=\"text\">";
}
echo "<hr>";

// let's see if there is a specific element in our array:

$searchTerm = "monk";
if(in_array($searchTerm,$classes)){

    echo "there is a monk in the array";

} else {

    echo "there is not a monk in the array";
}
echo "<hr>";

// let's find the index of something we want to search for:

$indexOfSearchTerm =  array_search($searchTerm,$classes);
echo "You are searching for $searchTerm. It looks like this element has been found at index $indexOfSearchTerm.";
echo "<hr>";

// let's randomly select only one INDEX from our array

$randomlySelectedClass = array_rand($classes,1);
echo "We have randomly selected an index from our array. This will most likely change every time you refresh the page. It is possible the same index will be
chosen again. The random index chosen is: $randomlySelectedClass";
echo "<hr>";

// let's echo the class we just chose from our array of classes:


echo "If we access the element at index $randomlySelectedClass, we find the element $classes[$randomlySelectedClass].
 This will most likely change every time you refresh the page. It is possible the same index will be chosen again.";


/*



Homework.png What is our homework?[edit]

  • none

Target.png How am I being assessed today?[edit]

I will assess you formatively today, and make a professional judgement to what extent you understand our learning material. I will use observation, your written work, answers to questions, and contribution to class discussions as data to make my decisions. I normally record my observations in a "evidence of learning" spreadsheet, which I will happily share with you privately if you so wish. I usually need a day or two notice.

Computer1.png As a computer scientist, you have:[edit]

  • Confidence in dealing with complexity
  • Persistence in working with difficult problems
  • Tolerance for ambiguity
  • The ability to deal with open-ended problems
  • The ability to communicate and work with others to achieve a common goal or solution

Credit.png Credits[edit]