teaching machines

CS 145 Lecture 4 – String problems and our first method

February 3, 2012 by . Filed under cs145, lectures, spring 2012.

Agenda

Code

NameFixerUpper.java

package preexam1;

public class NameFixerUpper {
  public static void main(String[] args) {
    String name = "STEINMEYER, JOEL EDWARD";
    
    // names in bad order!
    // names in uppercase!
    // bah!
    
    int commaSpot = name.indexOf(',');
    System.out.println(commaSpot);
    
    String lastName = name.substring(0, commaSpot);
    System.out.println(lastName);
    
    String rest = name.substring(commaSpot + 2);
    System.out.println(rest);
    
    int spaceSpot = rest.indexOf(' ');
    String firstName = rest.substring(0, spaceSpot);
    System.out.println(firstName);
    
    String fixeredUpName = firstName + " " + lastName;
    System.out.println(fixeredUpName);
  }
}

WebFilter.java

package preexam1;

public class WebFilter {
  public static void main(String[] args) {
    String url = "http://fooboo.woo.gov/page.edu.index.html";
    
//    System.out.println(url.replace('/', '?'));
    
    // Gives false positives.
//    boolean isSafe = url.contains(".edu");
//    System.out.println(isSafe);
    
    String httpless = url.substring(url.indexOf(':') + 3);
    System.out.println(httpless);
    
    int slashSpot = httpless.indexOf('/');
    String host = httpless.substring(0, slashSpot);
    
    boolean isSafe = host.endsWith(".edu");
    System.out.println(host + " is safe? " + isSafe);
  }
}

CircleMaker.java

package preexam1;

import java.util.Scanner;

public class CircleMaker {
  public static void main(String[] args) {
    
    // Get some circle data from the user.
    Scanner in = new Scanner(System.in);
    System.out.println("Where? ");
    int x = in.nextInt();
    int y = in.nextInt();
    System.out.println("What color? ");
    String color = in.next();
    System.out.println("How big? ");
    int radius = in.nextInt();

    // Use that data to make them their awesome circle.
    System.out.println("<html>");
    System.out.println("<body>");

    System.out.println("<h1>My first SVG</h1>");

    System.out.println("<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\">");
    System.out.println("<circle cx=\"" + x + "\" cy=\"" + y + "\" r=\"" + radius + "\" stroke=\"black\"");
    System.out.println("stroke-width=\"2\" fill=\"" + color + "\" />");
    System.out.println("</svg>");

    System.out.println("</body>");
    System.out.println("</html>");

  }
}

TODO

Haiku

Sweet automation.
Doesn’t mean more vacation.
We just do more stuff.