异度部落格

学习是一种生活态度。

0%

1
2
3
4
5
6
7
8
9
10
11
#2-2启动交互解释器,使用Python对两个数值(任意类型)进行加、减、乘、除运算。然后使用取余运算符来
#得到两个数相除的余数, 最后使用乘方运算符求A 数的B 次方。
#!/usr/bin/python
a = 8
b = 5
print 'a + b = %d' % (a + b)
print 'a - b = %d' % (a - b)
print 'a * b = %d' % (a * b)
print 'a / b = %d' % (a / b)
print 'a mod b = %d' % (a % b)
print 'a ^ b = %d' % (a ** b)
1
2
3
4
5
6
7
8
9
10
11
#2–4. 使用raw_input()函数得到用户输入
#(a) 创建一段脚本使用 raw_input() 内建函数从用户输入得到一个字符串,然后显示这个
#用户刚刚键入的字符串。
#(b) 添加一段类似的代码,不过这次输入的是数值。将输入数据转换为一个数值对象,(使
#用int()或其它数值转换函数) 并将这个值显示给用户看。(注意,如果你用的是早于1.5 的版
#本,你需要使用string.ato*() 函数执行这种转换)
#!/usr/bin/python
str = raw_input('Input a string:')
print str
num = raw_input('input a number:')
print int(num)
1
2
3
4
5
6
7
8
9
10
11
12
#2–5. 循环和数字
#分别使用while 和for 创建一个循环:
#(a) 写一个while 循环,输出整数从0 到10。(要确保是从0 到10, 而不是从0 到9 或从1 到10)
#(b) 做同 (a) 一样的事, 不过这次使用 range() 内建函数。
#!/usr/bin/python
i = 0
while i <= 10 :
print i
i += 1
print
for i in range(10) :
print i
1
2
3
4
5
6
7
8
9
10
#2–6. 条件判断 判断一个数是正数,还是负数, 或者等于0. 开始先用固定的数值,然后修改你的代码支持用户输入数值再进行判断。
#!/usr/bin/python
num = raw_input('Input a number:')
num = int(num)
if num > 0 :
print 'The Number is a Positive Number'
elif num < 0:
print 'The Number is a Negative Number'
else :
print 'The Number is Zero'
1
2
3
4
5
6
7
8
9
10
11
#2–7.
#循环和字串 从用户那里接受一个字符串输入,然后逐字符显示该字符串。先用while 循环实现,然后再用 for 循环实现。
#!/usr/bin/python
str = raw_input('Input a string:')
i = 0;
while i < len(str) :
print str[i]
i += 1

for c in str :
print c
1
2
3
4
5
6
7
8
9
10
11
12
#2–8. 循环和运算符 创建一个包含五个固定数值的列表或元组,输出他们的和。然后修
#改你的代码为接受用户输入数值。 分别使用while 和for 循环实现。
#!/usr/bin/python
print 'Input five numbers:'
i = 0
sum = 0
while i < 5 :
num = raw_input()
sum += int(num)
i += 1

print 'The Sum is: %d' % sum
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#2–9.
#循环和运算符 创建一个包含五个固定数值的列表或元组,输出他们的平均值。本练习的难
#点之一是通过除法得到平均值。 你会发现整数除会截去小数,因此你必须使用浮点除以得到更
#精确的结果。 float()内建函数可以帮助你实现这一功能。
#!/usr/bin/python
print 'Input five numbers:'
i = 0
sum = 0.0
while i < 5 :
num = raw_input()
sum += float(num)
i += 1
avg = sum / 5
print 'The Average is: %f' % avg
1
2
3
4
5
6
7
8
9
10
11
12
13
#2–10.
#带循环和条件判断的用户输入 使用raw_input()函数来提示用户输入一个1 和100 之间的
#数,如果用户输入的数满足这个条件,显示成功并退出。否则显示一个错误信息然后再次提示
#用户输入数值,直到满足条件为止。
#!/usr/bin/python
while 1 :
num = raw_input('Input a number(1-100):')
num = int(num)
if (num >= 0) and (num <= 100) :
print 'Inut Success'
break
else :
print 'Input Again'
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#2–11.
#带文本菜单的程序 写一个带文本菜单的程序,菜单项如下(1)取五个数的和 (2) 取五个
#数的平均值....(X)退出。由用户做一个选择,然后执行相应的功能。当用户选择退出时程序
#结束。这个程序的有用之处在于用户在功能之间切换不需要一遍一遍的重新启动你的脚本
#!/usr/bin/python
i = 0
sum = 0
print 'Input five numbers:'
while i < 5:
num = raw_input()
sum += float(num)
i += 1

while 1:
print '1.Sum'
print '2.Average'
print 'x.Exit'
select = raw_input('Input your select:')
if select == '1' :
print 'The Sum is %d' % sum
elif select == '2' :
avg = sum / 5
print 'The Average is %f' % avg
else :
break;

今天终于拿出 Python 核心编程开始学习 Python,一切语言都是由 helloworld 开始的,下面这个就是 Python 版本的

1
print 'Hello World!'

这语法..要多简单有多简单,要多暴力有多暴力

1)安装 Python

Python 下载地址: http://www.python.org/download/ 下载 Python 2.6.5 Windows installer

2)PyQt 安装

pyqt 下载地址:http://www.riverbankcomputing.co.uk/software/pyqt/download 下载 Python 相对应的版本 PyQt-Py2.6-gpl-4.7.3-2.exe 安装在与 Python 相同目录下

3)安装 Eric

运行 python install.py,要是出错,把 PyQt 和 Python 环境变量加上

4)运行 eric 目录下的 eric4.pyw 或 eric4.bat

程序在 Qt Creator 的 Release 下运行得好好的,可是一拿出来就不行了,之后我也拷了相应的库还是不行,加了环境变量也不行。提示说:程序找不到输入点 XXX QtCore4.dll。

解决方法: 库是肯定要拷的,关键是考哪个库的问题了,QtCore 和 QtGui 主要是这两个,这两个要拷 Qt/qt/bin 目录下面的,因为 Qt/bin 下面也有,所以这个地方要注意,要拷的库不正确就会出现这个问题。

下面这些库是 windows 下发布 Qt 必须的: mingwm10.dll libgcc_s_dw2-1.dll QtGui4.dll QtCore4.dll

其他的自己添加就 ok 了

1
2
3
4
5
6
7
8
<html>
<head><title>Test for PHP</title></head>
<body>
<?php
echo "<h1>Hello World</h1>/n";
?>
</body>
</html>

安装 Apache

sudo apt-get install apache2

安装 PHP5

sudo apt-get install php5

安装 MySQL

sudo apt-get install mysql-server mysql-common mysql-admin

安装 PHP-MySQL 驱动

sudo apt-get install php5-mysql

在浏览器中输入:http://localhost 查看

站点的程序默认在:/var/www/ apache 配置文件在:/etc/apache2 php 配置文件在:/etc/php5/

这个要是用 Qt 或者 MFC 等图形库估计很容易就实现了,可是用字符界面还是很麻烦的,具体看代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <iostream>
#include <string>
#include <ctime>
using namespace std;
string num[5][11] = {"****", " *", "****", "****", "* *", "****", "****", "****", "****", "****", " ",
"* *", " *", " *", " *", "* *", "* ", "* ", " *", "* *", "* *", " * ",
"* *", " *", "****", "****", "****", "****", "****", " *", "****", "****", " ",
"* *", " *", "* ", " *", " *", " *", "* *", " *", "* *", " *", " * ",
"****", " *", "****", "****", " *", "****", "****", " *", "****", "****", " "};

int main()
{
int i,j;
/*for(i= 0;i <a href="http://grandruby.co.uk/tips-on-choosing-the-best-poker-rooms">online casinos</a> < 10; i ) {
for(j = 0; j < 10; j ) {
cout << num[i][j] << " ";
}
cout << endl;
}
cout << endl << endl;*/

time_t t= time(0);
tm *curtime = localtime(&t);

int hour = curtime->tm_hour;
int min = curtime->tm_min;
int sec = curtime->tm_sec;
cout << hour << ":" << min << ":" << sec << endl;
cout << endl;

int timeArray[8];
timeArray[0] = hour / 10;
timeArray[1] = hour % 10;
timeArray[2] = 10;
timeArray[3] = min / 10;
timeArray[4] = min % 10;
timeArray[5] = 10;
timeArray[6] = sec / 10;
timeArray[7] = sec % 10;

for(i = 0; i < 5; i ) {
for(j = 0; j < 8; j ) {
cout << num[i][timeArray[j]] << " ";
}
cout << endl;
}
return 0;
}

这里用到两个函数 time 和 localtime,两个函数包含与 time.h 里面 time_t time( time_t time ); 功能: 函数返回当前时间,如果发生错误返回零。如果给定参数 time ,那么当前时间存储到参数 time 中。 struct tm gmtime( const time_t *time ); 功能:函数返回给定的统一世界时间(通常是格林威治时间),如果系统不支持统一世界时间系统返回 NULL。

PS:C 语言果然博大精深....

1)首先要修改 XX.pro 工程文件,加入一句 TRANSLATIONS += XXX.ts

2)然后在终端中运行 lupdate XX.pro 生成 ts 文件

3)然后用 Qt Linguist 翻译

4)Qt Linguist 里面有个发布功能,生成一个.qm 的文件

【试题描述】 问题:10个苹果,有一个苹果有问题,可能轻可能重,用三次找到问题苹果

【试题来源】未知

【试题分析】 先分组3 3 4,设第一组为A,第二组为B,第三组为C,然后拿3和3放天枰上 if (A ==B) { 问题苹果在C组里面 然后C组拿两个C1,C2放到各放一个到A,B组中 if(天枰偏移) { 证明问题苹果在放入的苹果C1,C2中,任取苹果C3换下C1。 If(天枰平衡){ 问题苹果为C1 }else { 问题苹果为C2 } } else { 证明问题苹果在剩下的苹果C3,C4中,任取苹果C3换下C1。 If(天枰平衡){ 问题苹果为C4 }else { 问题苹果为C3 } } } else { 证明问题苹果在A组或B组里面 然后取下A组,从C组中拿出3个换上 If(天枰平衡){ 问题苹果在A组中,取下所有苹果从A组中拿两个放上去,问题解决。 }else { 问题苹果在B组中,取下所有苹果从B组中拿两个放上去,问题解决。 } }

首先先贴代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <iostream>
using namespace std;
class A
{
public:
A() { cout << "class A is constructed" << endl;}
~A() { cout << "class A is destroyed" << endl; }
//method
void fa() { cout << "class A fa method" << endl;}
void fb() { cout << "class A fb method" << endl;}
};
class B : public A
{
public:
B() { cout << "class B is constructed" << endl;}
~B() { cout << "class B is destroyed" << endl; }
//method
void fa() { cout << "class B fa method" << endl;}
void fb() { cout << "class B fb method" << endl;}
};
int main()
{
A *pa = new A;
B *pb = new B;
cout << endl;
pa->fa();
pa->fb();
cout << endl;
pb->fa();
pb->fb();
cout << endl;
delete pa;
delete pb;
cout << endl;
return 0;
}
1
2
3
4
5
6
7
8
9
10
11
运行结果如下:
class A is constructed
class A is constructed
class B is constructed
class A fa method
class A fb method
class B fa method
class B fb method
class A is destroyed
class B is destroyed
class A is destroyed

细心的娃肯定能发下些问题了,在子类的构造函数中先构造父类然后在构造子类,析构时先析构子类然后再析构父累

PS:这个题上次去 Foxit 有考,刚开始我是这么想的,后来居然给改了,郁闷阿...........