(10101101)173/JAVA2011. 12. 29. 03:20
이 코드는 학교 강의시간에 문제로 나와 사용되었던 코드 입니다. for문을 다루기 위해 나온 문제 입니다.
// 문제 : for문을 이용하여 1 ~ 100까지의 짝수를 출력하는 프로그램을 작성하세요

import java.io.*;		// IOException사용을 위해 선언

public class forsum_evennum
{
	public static void main(String[] args) throws IOException
	{
		int fori = 0;	// for문에서 사용할 증감값 선언 및 초기화
		int fset = 0;	// for문에서 사용할 누적 증감값 선언 및 초기화
		
		for(fori = 1; fori <= 100; fori++)
		{// for문으로 1부터 100까지 증가 합니다.
			if((fori % 2) == 0)
			{// 증가하는 fori값을 % 2 하여 짝수일 경우에 값을 누적합니다.
				fset += fori;
				
				System.out.println
					(fori + " + " + ((fset - fori)) + " = " + fset);
			}
		}
	}
}
주석에 간단하게 설명되어 있는대로 이해하시면 됩니다.
Posted by Special Alex
(10101101)173/JAVA2011. 12. 28. 03:24
이 코드는 학교 강의시간에 문제로 나와 사용되었던 코드 입니다. for문을 다루기 위해 나온 문제 입니다.
// 문제 : for문을 이용하여 0부터 입력받은 수까지의 합을 구하는 프로그램을 작성하세요

import java.io.*;		// IOException사용을 위해 선언

public class for_sum
{
	public static void main(String[] args) throws IOException
	{
		BufferedReader in = new BufferedReader (new InputStreamReader(System.in));
		// 엔터를 자동 처리 및 문자열 입력을 위해 선언
		
		System.out.print("정수를 입력하세요 : ");
			int ind = Integer.parseInt(in.readLine());
			// 받은 값을 int형으로 형 변환
			
		while(true)
		{// 무한 루프로써 지정된 값을 입력했는지 확인
			if(ind >= 100 || ind <= 0)
			{// 입력값이 0보다 같거나 작으며 100보다 같거나 크면 제입력 요구
				System.out.print("입력을 0 ~ 99까지로 제한해 놓았습니다. "
					+ "다시 입력해 주세요. : ");
				ind = Integer.parseInt(in.readLine());
			}
			else
			{
				break;
				// 입력값이 0보다 크며 100보다 작다면 while문 탈출
			}
		}
		
		int fori = 0;	// for문에서 사용할 증감값 선언 및 초기화
		int fset = 0;	// for문에서 사용할 누적 증감값 선언 및 초기화
		
		for(fori = 1; ind >= fori; fori++)
		{
			fset += fori;	// fori값이 fset값으로 누적
			System.out.println(fori + " + " + (fset - fori) + " = " + fset);
		}
	}
}
주석에 간단하게 설명되어 있는대로 이해하시면 됩니다.
Posted by Special Alex
(10101101)173/C#2010. 8. 20. 11:42
프로그램의 값을 저장하기 위해 파일을 만들어서 상태값을 저장하는 경우가 있습니다. 윈도우에서는 이에 대한 방법중 하나로 ini확장자를 가진 파일을 사용합니다.(하지만 실제로 ini보단 레지스트리를 선호합니다.) 저는 개인적으로 레지스트리 보다 ini파일을 선호합니다. ini파일을 읽고 쓰기 위해서는 C#자체 적으로 제공하지 않고 win32를 통해 사용합니다.

using System.Runtime.InteropServices;

[DllImport("kernel32")]
private static extern int GetPrivateProfileString(string section,
	string key, string def, StringBuilder retVal, int size, string filePath);

[DllImport("kernel32")]
private static extern long WritePrivateProfileString(string section,
	string key, string val, string filePath);

// INI 값 읽기
public String GetIniValue(String Section, String Key, String iniPath)
{
	StringBuilder temp = new StringBuilder(255);
	int i = GetPrivateProfileString(Section, Key, "", temp, 255, iniPath);
	return temp.ToString();
}

// INI 값 설정
public void SetIniValue(String Section, String Key, String Value, String iniPath)
{
	WritePrivateProfileString(Section, Key, Value, iniPath);
}

위에 코드를 통해 ini파일에 값을 읽고 쓰게 됩니다. 위에 소스로 만든 샘플코드는 첨부파일에서 확인하실 수 있습니다. 샘플코드 프로젝트는 VisualStudio 2010에서 만들어 졌으며 .NET Framework 2.0이상일 경우 문제없이 실행됩니다.

Posted by Special Alex