Java学习笔记 2015/4/12
来源:互联网 发布:win7与xp网络共享 编辑:程序博客网 时间:2024/06/08 05:53
C3:Variables, values , and types Arithmetic expressions. 学习完毕。
C4:Expressions,预习完毕。Lecture_6未听。预计今晚上完。对应本章课后作业明天完成。
Assignment_1 完成。但是无法check.
以下是A1部分,代码,欢迎交流。
/*
* File: CheckerboardKarel.java * ---------------------------- * When you finish writing it, the CheckerboardKarel class should draw * a checkerboard using beepers, as described in Assignment 1. You * should make sure that your program works for all of the sample * worlds supplied in the starter folder. */import stanford.karel.*;public class CheckerboardKarel extends SuperKarel {private int i = 0;public void run() {while((!leftIsBlocked())) {judgeFirstCorner();completeOneStreet();moveNextStreet();}judgeFirstCorner();completeOneStreet();moveNextStreet();}/* * If the street is a odd street, the first corner should be put a beeper; else it is empty. */ private void judgeFirstCorner() { if(i==1){ i = 0; if(frontIsClear()) { move(); putBeeper();}; } else { i = 1; putBeeper(); } } /* * control the Karel to check one street/ */ private void completeOneStreet() { while(frontIsClear()) { move(); if(frontIsClear()) { move(); putBeeper(); }; } // while if(facingEast()){ turnAround(); }; if(frontIsClear()) { backToStart(); turnAround(); } else { turnAround(); backToStart(); if(facingWest()) { turnAround();}; } } /* * when complete one street. control the karel back to its original port. */ private void backToStart() { while(frontIsClear()) { move(); } } /* * given that one street is completed, we move to the next street. */ private void moveNextStreet() { turnLeft(); if(frontIsClear()) {move(); turnRight(); }; }// You fill in this part}
<pre name="code" class="java">/* * File: CollectNewspaperKarel.java * -------------------------------- * At present, the CollectNewspaperKarel subclass does nothing. * Your job in the assignment is to add the necessary code to * instruct Karel to walk to the door of its house, pick up the * newspaper (represented by a beeper, of course), and then return * to its initial position in the upper left corner of the house. */import stanford.karel.*;public class CollectNewspaperKarel extends Karel {public void run() { move();move(); turnRight(); move(); turnLeft(); move(); pickBeeper();}/* * Turns Karel 90 degrees to the right. */ private void turnRight() { turnLeft(); turnLeft(); turnLeft(); } // You fill in this part}
/* * File: MidpointFindingKarel.java * ------------------------------- * When you finish writing it, the MidpointFindingKarel class should * leave a beeper on the corner closest to the center of 1st Street * (or either of the two central corners if 1st Street has an even * number of corners). Karel can put down additional beepers as it * looks for the midpoint, but must pick them up again before it * stops. The world may be of any size, but you are allowed to * assume that it is at least as tall as it is wide. */import stanford.karel.*;public class MidpointFindingKarel extends SuperKarel {private int length;private int midLength;public void run() {int halfLength;moveToEnd();turnAround();halfLength = length/2;for(int i=0; i < halfLength ; i++){move();}judgeTheMid();if(midLength==halfLength){turnAround();for(int i=0; i < halfLength ; i++){move();}putBeeper();} else {turnAround();for(int i=0; i < halfLength ; i++){move();}putBeeper();move();putBeeper();}}// You fill in this part/* * when start running, move Karel to the end of the street. * Use the "length" variables to count the length of the street. */ private void moveToEnd() { while(frontIsClear()){ move(); length++; } } /* * calculate the correct length of mid ,thinking of the two condition : odd or even. */ private void judgeTheMid() { while(frontIsClear()){ move(); midLength++; } } }
/* * File: StoneMasonKarel.java * -------------------------- * The StoneMasonKarel subclass as it appears here does nothing. * When you finish writing it, it should solve the "repair the quad" * problem from Assignment 1. In addition to editing the program, * you should be sure to edit this comment so that it no longer * indicates that the program does nothing. */import stanford.karel.*;public class StoneMasonKarel extends SuperKarel { public void run() { while(frontIsClear()) { turnLeft(); completeOneAvenue(); turnAround(); backToOriginal(); turnLeft(); getNextAvenue(); } turnLeft();completeOneAvenue();turnAround();backToOriginal();turnLeft(); } /* *repair one avenue from one port to another port.If there *have been a beeper ,Karel neglect this corner. If haven't *Karel put a beeper in that corner. */ private void completeOneAvenue() {while(frontIsClear()) {if(beepersPresent())move();else {putBeeper();move();}}if(!beepersPresent())putBeeper();} /* * when Karel finish one avenue.For this method ,we control * Karel back to its original port. */ private void backToOriginal(){ while(frontIsClear()){ move(); } } /* *when complete one avenue ,we control Karel move to the next avenue. */ private void getNextAvenue() { while(frontIsClear()) { for(int i=1; i<5; i++) move(); break; }} }
0 0
- Java学习笔记 2015/4/12
- Java学习笔记12
- java学习笔记12
- java学习笔记12
- Java学习笔记12
- Java学习笔记4
- java学习笔记4
- java学习笔记4
- JAVA学习笔记4
- java学习笔记4
- java学习笔记4
- java 学习笔记4
- java学习笔记4
- Java学习笔记4
- java学习笔记4
- java学习笔记4
- Java学习笔记4
- java学习笔记4
- Spring的优点和缺点
- 你所不知道的html5与html中的那些事(三)
- tomcat连接 HTTPS 配置
- C语言如何防止野指针
- VS2013中安装配置和使用Boost库
- Java学习笔记 2015/4/12
- ACCESS数据库保留字千万慎用
- 山东省第三届省赛 (Pixel density)
- 最火Android开源项目
- 随机数的集合
- Regular Expression Matching--LeetCode
- leetcode第19题-Remove Nth Node From End of List
- 谈谈我对opencv中IplImage图像参数widthstep的理解
- T001-UT001-0001