[Java]คำสั่งวนลูป การใช้ for
การใช้งานคำสั่ง For มี 2 แบบ
แบบที่ 1
/** * * @author http://javaagkasit.blogspot.com */ public class basic_For { public static void main(String [] args){ String [] item = {"For_1 = for","For_2 = For-each Loop"}; for(int i = 0 ; i < item.length;i++){ System.out.println(item[i]); } } } |
แบบที่ 2
/** * * @author http://javaagkasit.blogspot.com */ public class basic_For2 { public static void main(String [] args){ String [] item = {"For_1 = for","For_2 = For-each Loop"}; for(String s : item){ System.out.println(s); } } } |
Output.
output ทั้ง 2 แบบเหมือนกันทุกประการ ถ้าจะถามว่าทำไมถึงมี 2 แบบ เขียนโปรแกรมบ่อยๆก็จะเข้าใจเอง
การทำงานของคำสั่ง For Loop
Sentex:
แบบที่ 1for(initialization ; Boolean_expression ; update) { //Statements } |
แบบที่ 2
for (type var : arr) { //Statements } |
Explained by flow control.
[Java]การใช้ switch case
I have the source code.
/** ตัวอย่างการใช้งาน switch case * ตัวอย่างนี้ เป็นการแปลงตัวเลขเป็นตัวอักษร โดยนำ switch case มาใช้งาน * * @author http://javaagkasit.blogspot.com/ */ public class switchCase { public static void main(String [] args){ for(int i = 0 ; i < 10 ; i++){ System.out.println(revertNumberToString(i));//Show Number String } } //Mathode revert Number to String. public static String revertNumberToString(int i){ switch(i){ case 0 : return "zero"; //if i == 0 then return "zero" case 1 : return "one"; //if i == 1 then return "one" case 2 : return "two"; //if i == 2 then return "two" case 3 : return "tree"; //if i == 3 then return "tree" case 4 : return "four"; //if i == 4 then return "four" case 5 : return "five"; //if i == 5 then return "five" case 6 : return "six"; // . case 7 : return "seven"; // . case 8 : return "eigth"; // . case 9 : return "nine"; //if i == 9 then return "nine" default : return"ten"; //others in condition then == "ten" } } } |
สาเหตุที่ไม่มีคำสัง break เหมือน switch case แบบที่เราเคยเห็นทั่วไป คือ ในลักษณะการทำงานนี้ทำครั้งเดียวอยู่แล้วไม่จำเป็นต้อง ใช้คำสั่ง break
Explained by this.
Output.
[JAVA] ACM Reverse and Add
The Problem
เป็นการนำตัวเลขมาสลับ(Reverse)แล้วบวกกับค่าเดิม และกระทำเช่นนั้นไปเรื่อยๆจนกว่าผลลัพธ์จะเป็น palindrome ก็คือตัวเลขที่เรียงจากซ้ายไปขวา เรียงขวาไปซ้ายเป็นเลขเดียวกัน สังเกตุจากรูปด้านล่าง ผลลัพธ์ 9339 เรียงซ้ายไปขวา เรียงขวาไปซ้าย ก็ ได้ตัวเลขเดียวกัน
Sample input / output
I have a Java code.
import java.util.Scanner; /** * @author http://javaagkasit.blogspot.com/ */ public class ReverseAndAdd { static long MAX = (long) 4294967295.0;//ค่ามากสุด private String sum ; // เช่น 195 private long sumba; //ถ้า sum เป็น 195 ,sumba ก็จะเป็น 951 public static void main(String[] args) { Scanner input = new Scanner(System.in); ReverseAndAdd rev = new ReverseAndAdd(); long sum2 = 0 ,re ; //re ไว้ตัวเลขที่กลับตำแหน่งแล้ว String sum = ""; //เก็บตัวเลขที่อ่านมาจากไฟล์ try{ do{ sum = input.nextLine(); //อ่านข้อมูลมาที่ละบรรทัด int count = 0; while(true){//ทำไปเรื่อย sum2 = Long.parseLong(sum); re = rev.Reverse(sum); if(sum2 == re) break;//ออกจากการวนลูป (เจอ) else if((count == 1000)|(sum2 > MAX)) { System.out.println("not palindrome foun"); break; //ออกจากการวนลูป(ไม่เจอ) }else {//เก็บผลลัพธ์ล่าสุด sum = rev.ans(sum2, re); count++; } } rev.print(count, sum2,sum);//โชว์คำตอบออกทาง output }while(!"0".equals(sum)); }catch(Exception e){ e.getMessage(); System.out.println("Input errors.!!!\nTry put, 195 "); } } // เมทอต สำหรับสลับตำแหน่งตัวเลข เช่น 159 ก็จะสลับเป็น 951 public long Reverse(String sum){ StringBuffer sb = new StringBuffer(sum); sb.reverse(); sumba = Long.parseLong(sb.toString()); return sumba; } //เอา sum + sumba public String ans(long sum,long sumba){ sum += sumba; //sum = sum +sumba String an = String.valueOf(sum); return an; } //ปริ๊นคำตอบออก output public void print(int count,long sum,String sums){ if((count == 1000)|(sum >= MAX)|(sums.equals("0"))) ; else System.out.println(count+" "+sum); } }
[JAVA] ACM PrimaryArthmeticQ
Sample Input
123 456 555 555 123 594 0 0 |
Sample Output
No carry operation. 3 carry operations. 1 carry operation. |
I have a java code.
/** * * @author http://javaagkasit.blogspot.com/ */ import java.util.Scanner; public class PrimaryArthmeticQ { static int ten =10,zero = 0,one =1; private int ans = zero, carry = zero, totalcarry = zero; public static void main(String[] args)throws Exception{ Scanner sc = new Scanner(System.in); PrimaryArthmeticQ PAQ =new PrimaryArthmeticQ(); try{ while(true){ String inputS= sc.nextLine(); if(!inputS.equals("0 0")){ String[] input =inputS.split(" "); PAQ.process(input[zero], input[one]); PAQ.print(); }else{ System.out.print(""); break; } } }catch(Exception e){ System.out.println(e.getClass()); System.out.println("Re-enter.!!!"); } } public void process(String s1,String s2){ String ss1 = reverseStr(s1);//ตัวตั่ง String ss2 = reverseStr(s2);//ต้วบวก int last = lengthLoop(ss1,ss2);//จำหลักของตัวเลข int op=zero,op2=zero; for(int i =zero ; i < last ;i++){ if( i < ss1.length()) op = Integer.parseInt(ss1.charAt(i)+"");else op = zero; if( i < ss2.length()) op2 = Integer.parseInt(ss2.charAt(i)+"");else op2 = zero; add(op,op2);//ตัวตั่งกับ ต้วบวกบวกกัน } this.carry = zero;//clear carry =0 } public void print(){ if(totalcarry == one) System.out.println(totalcarry+" "+"carry operation."); else if(totalcarry == zero) System.out.println("No carry operation."); else System.out.println(totalcarry+" "+"carry operations."); this.totalcarry = zero;//clear totalcarry =0 } private void add(int op,int op2){ ans = op + op2 +carry; Ccarray(); } private void Ccarray(){ if(ans >= ten){ this.carry = one; totalcarry++; }else this.carry = zero; } private String reverseStr(String st){ StringBuffer str = new StringBuffer(st); str.reverse(); String ss = str.toString(); return ss; } private int lengthLoop(String s1,String s2){ int last=zero; if(s1.length() > s2.length()){ last=s1.length(); }else{ last=s2.length(); } return last; } } |
[Java basic] การใช้ if else if
ตัวอย่าง การใช้งาน if else if
/** * * @author http://javaagkasit.blogspot.com/ */ public class ifelseif { public static void main(String [] args){ int score = 60; if(score <= 49){ System.out.println("gate F"); }else if (score <= 59 ){ System.out.println("gate D"); }else if(score <= 69){ System.out.println("gate C"); }else if(score <= 79){ System.out.println("gate B"); }else if(score <= 100){ System.out.println("gate A"); }else{ System.out.println("enter score"); } } } |
output
[Java ] การใช้ if else
หนังสือจาวาฟรี Free Java Ebooks
หนังสือ Java ฟรี ภาษาไทย
- เริ่มต้นการเขียนโปรแกรมด้วย Java http://sci.feu.ac.th/faa/Java.intro/IntroToJava.html
- จาวาสำหรับผู้เริ่มต้น http://dekisugi.net/wp-content/uploads/2009/05/java2.pdf
- โครงสร้างข้อมูลและอัลกอริทึมด้วย (Java) http://sci.feu.ac.th/faa/dsa/dsa.html
- สำหรับคนที่ชอบอ่านโค้ด http://downloads.se-ed.com/ เป็นโค้ดที่มากับหนังสือที่ขาย ของ se-ed book
- อ่านแล้วไม่เข้าใจก็ฟังเอา http://www.javathailand.com/ ฟังแล้วเข้าใจลองดู
- Free Java Ebooks http://www.mkyong.com/featured/top-5-free-java-ebooks/ [มี 5 เล่ม]
[c#] Set QoS Bandwidth Reserve Setting เพื่อเพิ่ม bandwidth ในการท่องเน็ตให้เร็วขึ้น
Aagkasit Tontan
23:38:00
Set QoS Bandwidth Reserve Setting
เพื่อเพิ่ม bandwidth ในการท่องเน็ตให้เร็วขึ้น
public void NonBestEffortLimit()
{ Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\ Windows\Psched", "NonBestEffortLimit", 1, RegistryValueKind.DWord); } |
use Bandwidth default (Bandwidth == 20)
public void reNonBestEffortLimit()
{ Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\ Windows\Psched", "NonBestEffortLimit", 20, RegistryValueKind.DWord); } |
Subscribe to:
Posts
(
Atom
)
No comments :
Post a Comment