//
// main.m
// Day4_循环_王佳兴
//
// Created by 王佳兴 on 14-10-16.
// Copyright (c) 2014年 lanou3g.com蓝鸥科技. All rights reserved.
//
#import <Foundation/Foundation.h>
int main(int argc,const char * argv[]) {
//1.(**)随机产生20个[10 , 100]的正整数,输出这些数以及他们中的最大数
// int i, num, max = 0;
// for(i = 0; i < 19; i++){
// num = arc4random() % (100 - 10 + 1) + 10;
// printf("%d ", num);
// if (num >= max) {
// max = num;
// }
// }
// printf("The maxnumber is %d\n",max);
//2.(**)编程将所有“水仙花数”打印出来,并打印其总个数。 “水仙花数”是一个各个位立方之和等于该整数的三位数
// int a100, a10, a1, a = 100;
// while (a < 1000) {
// a100 = a / 100;
// a10 = a % 100 / 10;
// a1 = a % 10;
// if(a == a100 * a100 * a100 + a10 * a10 * a10 + a1 * a1 * a1) {
// printf("水仙花数是:%d", a);
// }
// a++;
// }
//3.(**)已知abc+cba = 1333,其中a,b,c均为一位数,编程求出满足条件的 a,b,c所有组合
// int a, b, c;
// for (a = 1; a < 10; a++) {
// for (b = 0; b < 10; b++) {
// for (c = 1; c < 10; c++) {
// int abc = a * 100 + b * 10 + c;
// int cba = c * 100 + b * 10 + a;
// if (abc + cba == 1333){
// printf("a:%d b:%d c:%d\n", a, b, c);
// }
// }
// }
// }
//4. (***)输入两个数,求最大公约数和最小公倍数。(用两种方法:辗转相除法和普通方法)
// //第一种方法:普通方法
// printf("input two numbers:");
// int num1, num2, a = 1,b;
// scanf("%d%d", &num1, &num2);
// while (a) {
// if (a * num1 % num2 == 0) {
// printf("最小公倍数是:%d\n", num1 * a);
// break;
// }
// a++;
// }
// if (num1 > num2) {
// b = num2;
// }else{
// b = num1;
// }
// while (b) {
// if (num1 % b == 0 && num2 % b == 0) {
// printf("最大公约数是:%d\n",b);
// break;
// }
// b--;
// }
// //第二种方法:辗转相除
// printf("input two numbers:");
// int a, b, c, num1, num2;
// scanf("%d%d", &num1, &num2);
// a = num1;
// b = num2;
// c = num1 % num2;
// while(c != 0)
// {
// num1 = num2;
// num2 = c;
// c = num1 % num2;
// }
// printf("最大公约数是:%d\n", num2);
// printf("最小公倍数是:%d\n", a * b / num2);
//5. (***)一个球从100m高度自由落下,每次落地后反跳回原来高度的一半,再落下,再反弹。求它在第 10次落地时,共经过多少米?第 10次反弹多高
// int i = 0;//i为落地次数和反弹次数 a为输入次数
// float high = 100;//反弹高度
// distance += high;//经过总距离
// while (i < 10) {
// high = high / 2;
// distance += high * 2;
// i++;
// }
// printf("high is %f, distance is %f", high, distance);
// float sum=0;
// int i=0;
// float height=100;
// sum+=height;
// while(i<2)
// {
// height=height/2;
// sum+=2*height;
// i++;
// }
// printf("总长度:%f 第10次跳%f米",sum,height);
//6. (****)输入 n,分别用*输出边长为 n的实心菱形和空心菱形。
// 例如:n = 3 时,输出:
// *
// ***
// *****
// ***
// *
// *
// * *
// * *
// * *
// *
// printf("请输入边长:");
// int n, i, j, k;
// scanf("%d", &n);
// for(i = 1; i <= n; i++){
// for(j = 1; j <= n - i; j++){
// printf(" ");
// }
// for (k = 1; k <= i * 2 - 1; k++) {
// printf("*");
// }
// printf("\n");
// }
// for (i = 1; i <= n - 1; i++) {
// for (j = 1; j <= i; j++) {
// printf(" ");
// }
// for (k = 1; k <= n * 2 - i * 2 - 1; k++) {
// printf("*");
// }
// printf("\n");
// }
// for (i = 1; i <= n; i++) {
// for (j = 1; j <= n - i; j++) {
// printf(" ");
// }
// printf("*");
// if (i >= 2) {
// for (k = 1; k <= i * 2 -3; k++) {
// printf(" ");
// }
// printf("*");
// }
// printf("\n");
// }
// for (i = 1; i <= n - 1; i++) {
// for (j = 1; j <= i; j++) {
// printf(" ");
// }
// printf("*");
// if (i < n - 1) {
// for (k = 1; k <= n * 2 - 3-i*2; k++) {
// printf(" ");
// }
//
// printf("*");
// }
// printf("\n");
// }
//7.(****)反复校验用户输入的生日,包括年、月、日。直到年、月、日都合法
// int year, month, date;
// start:
// printf("请输入您的生日:");
// scanf("%d %d %d", &year, &month, &date);
// if (year >= 1930 && year <= 2014) {
// if (month >= 1 && month <= 12) {
// if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {
// if (date >= 1 && date <= 31) {
// printf("合法!\n");
// }else{
// printf("日期不合法!\n");
// goto start;
// }
// }
// if(month == 4 || month == 6 || month == 9 || month == 11){
// if (date >= 1 && date <= 30) {
// printf("合法!\n");
// }else{
// printf("日期不合法!\n");
// goto start;
// }
// }
// if (month == 2) {
// if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
// if (date >= 1 && date <= 29) {
// printf("合法!\n");
// }else{
// printf("日期不合法!\n");
// goto start;
// }
// }else{
// if (date >= 1 && date <= 28) {
// printf("合法!\n");
// }else{
// printf("日期不合法!\n");
// goto start;
// }
// }
// }
// }else{
// printf("月份不合法!\n");
// goto start;
// }
// }else{
// printf("年份不合法!\n");
// goto start;
// }
return 0;
}