体积法_1_设计方法系列研究之一_葛明

体积法_1_设计方法系列研究之一_葛明
体积法_1_设计方法系列研究之一_葛明

体积法是关于空间的一种设计方法。它目前与结构法、不定形法一起构成了我对空间的一些认识1)。

20世纪至今建筑设计方法研究的核心问题之一是空间,而如今持续思考这一问题的人日益减少,似乎空间不再是问题。这其实是个问题。

20世纪上半叶著名的空间设计方法主要有阿道夫?路斯( Adolf Loos)的“Raumplan”(体积法,也有译作容积规划),勒?柯布西耶 (Le Corbusier)的“Plan Libre”(自由平面)[1]。 下半叶起,柯林?罗(Colin Rowe), 约翰?海杜克(J.Hejduk),赫伊斯利(B.Hoesli) 等人从透明性(Transparency) 出发研究勒?柯布西耶的空间设计方法;阿尔多?罗西(Aldo Rossi),阿尔瓦罗? 西扎(A.Siza)等人则不断对阿道夫?路斯致敬,随着瑞士、西班牙、葡萄牙建筑师群的崛起,使“Raumplan”余绪不断。但不可否认,随着当代建筑学中“词”与“物”的不断分离,围绕空间的设计方法研究总体来说日益停滞,因此,这成了本系列研究的动力之一。

1 背景 (Background)

所谓体积法,这一名字是后来定义的。2004年起,我和同济大学的王方戟教授一起受邀在南京大学参加了3年的研究生一年级设计教学,主要负责其中的第1个作业。教学的第1年就确定了现在体积法中的一些的内容,后来又逐年增加——那时我们没有使用这一名字。2006年,我对它做了大幅调整和改进,在东南大学本科三年级推行。也从那时起,逐渐开始使用这个名字,它取自于奥地利的伟大建筑师——阿道夫?路斯的Raumplan,这是因为当时觉得这套方法不知不觉地走向了路斯的思想,并试图有所发展,虽然它在一开始的时候并不只是针对路斯问题而产生的。之后随着认识的不断深化,对体积法的推进也日益增多。

发展体积法的另外一个起因来自对苏黎世高工(ETH)传统的思考。东南大学和南京大学非常得益于1980年代起成批的老师前往ETH留学。它有3个传统,一是建构传统,一是赫伊斯利传入的透明性传统,还有一个传统来自1970年代罗西的教学,提契诺学派(Ticino)的斯诺兹(Luigi Snozzi)也同时在那儿教书,培养了著名的赫尔佐格和德梅隆(Herzog & De Meuron)等人。顾大庆、丁沃沃教授等在ETH跟随的老师是克莱默(Kramel)教授,他负责一年级设计——以前在ETH,一年级有3门设计课程,分别是建筑设计、构造设计、艺术设计,他把前两者合成了一门。顾大庆教授他们回来之后就在东南大学的大一、大二进行教改,从而传来了ETH的前2个传统,这也是大陆真正意义上的现代空间设计教育的起点之一。那么,如何在ETH传统的基础上发展出更广泛意义上的空间设计方法,并适合我们,这形成了一个迫切的课题。

2006年起,我还初步发展了关于空间设计的其它方法如结构法、不定形法,兴趣也不再止于路斯或者ETH的设计方法体系,比如或前或后展开的关于概念建筑、园林、住宅设计方面的研究, 以及关于类型学和模式语言的研究。所以当2007-2008年我在ETH的时候,

体积法(1)

— 设计方法系列研究之一Raumplan (1)

Series Study on Design Method - Part One

[ 葛明 ] Ge Ming

作者单位

东南大学建筑学院(南京,210096)收稿日期

2013/07/23摘 要

对一种空间设计方法——体积法进行研究,分别

探讨了它的概念和其中的2个重要思想:房间和

布置。

关键词

体积法 房间 布置

ABSTRACT

This paper makes a study on a method of space design—

Raumplan, and separately introduces its concept and two

important thoughts: room and plan.

KEY WORDS

Raumplan; room; plan

有意识地开始了沟通各种设计方法的思考。2009年以后,机缘使然,逐渐了解了日本东京工业大学学派的一些设计思想,尤其是坂本一成教授的空间构成论,促使我在更大的视野中重新思考体积法的意义,它们分别是:

其一,体积法中的空间认识如何才能更好地面对当代境况的变化,从而进一步有效地推进当代空间设计的研究?它如何才能更有效地帮助我们的空间认识开始具有自己的特征?

其二,体积法作为一种逐渐体系化的方法,空间取向与操作方法日益明了,环境态度与形式特征日趋明晰,那么如何才能充分发挥它激发空间想象力的价值?

其三,我们目前的学生大部分还不习惯使用实体模型来推敲方案,这样难以形成基本的现代空间认识—实体模型的作用真正重要的是如何研究“空”(sketchup一类的软件对设计初学者十分不妥),因此,体积法能否进一步促进包括设计界在内对模型方法的使用?

2 概念(Concept)

体积法——Raumplan,其中,Raum 在德文中是空间的意思,但更多地指向一种对身体具有包裹效果的类似房间一样的空间。Raum在路斯那里又作何解释呢?我在他设计的布拉格缪勒住宅(Müller Villa)里与一个捷克的艺术史博士进行过讨论,对方建议英文翻译为a space like a volume[美国肯尼思?弗兰普顿(Kenneth Frampton)教授的翻译与此相同]——一个像体积一样的空间,并以房间为单元,而plan则是指如何把这些空间符合情境(situation)地安排布置。因此,把Raumplan做一个更为简单的翻译,就是假设一个空间是可以测量的一个体积,而这类空间又怎样合宜地布置在一起。

这就关涉2个重要的设计议题,一是对空间的某类认知,二是如何对这类空间进行组织。这也是当年我们思考空间设计方法的出发点之一,后来发现与路斯的思想有相似之处时,一下激发了更大的研究兴趣。

路斯的时代,恰逢大都市精神生活分析的兴起。他喜欢用白色的外表、静穆的脸面、近乎禁欲的表情面向光怪陆离的外部世界。他用空间经济学来策划建筑的体量,要求外形简洁,并要求每个房间以符合自身特性的层高排入体量,从而导致了一个复杂的剖面产生。与此同时,尽管不同的房间高度各不相同,但它们还要能产生各种符合礼仪的空间序列,以便互相融入。因此路斯的空间方法需要空间构成的技巧和空间认知的高度结合,既需要彼此尽量地开放,又能够维持各个房间自身的特性。

维也纳的莫勒住宅(Moller Villa)是路斯的一个著名设计(图1),一个简洁的体量,

1 莫勒住宅(奥地利维也纳,1927)立面

2 莫勒住宅轴测

3 莫勒住宅餐厅室内

4 特尔加诺住宅(西班牙马德里,1988) 室内

5 特尔加诺住宅剖面

入口有一个凸出的体块,这也是所谓的太太的闺房——在这个房子里的一个女性空间。路斯的设计强调区分男性的空间和女性的空间,这听起来非常抽象,其实是对房子的一种空间分化方法,这样可以促使每个空间产生特性,也可以说通过特意的分化以产生空间的类别。

此外,通过观察这一住宅的轴测(图2)和从客厅望向餐厅的照片(图3),可以发现这是日常意义上的2个房间。它们中间有一个踏步,开设了巨大的洞口,但是仍然小心

翼翼地维护着2个房间各自的完整性。这2个房间在不同的标高上进行放置,使房间的区别更大,并进一步获得了各自特定的空间感,我称之为“房间一样的空间”;但与此同时,也是因为标高的变化,2个“房间一样的空间”又产生了特定的联系。

“房间一样的空间”正是体积法概念的起点。

3 房间(Room)

我们把路斯的“体积一样的空间”扩展成了“房间一样的空间”,那么如何通过理解房间并扩展房间的定义,从而建立一种新的空间认识?接着,又如何运用这种空间认识进行一个房子的空间构成?

我们开始思考第1个问题——什么是房间(Room)。它在不同的地方,不同的时期有着不同的解释,但是似乎又具有一些既定的空间特征,每个人都能理解。

体积法如果能够成为一种具有广泛意义的空间设计方法,那么思考Room的方法就必须有所不同。它并不直接追询Room的定义,而是从Rooms开始进行空间思考,以下是关于Rooms出现的一些情形:

1) “Room in Room”(房间中的房间)

图4是西班牙建筑师巴埃萨(A. C. Baeza)的一个房子,特尔加诺住宅(Turegano House ),它表现了“房间中的房间”。巴埃萨的名言之一是“穿过一个房间到另一个房间的光是重要的”——光并不重要,而在于

它使房间之间有了关系而重要,正是在这关

系之中,房间得以呈现。图5是巴埃萨非常

喜欢画的剖面,可以看到穿过房间再到房间

的这一动作。

2) “Room with Room”(房间与房间)

图6是英国建筑师奇普菲尔德(David

Chipperfield)的方案——桃花源别墅

(Taohuayuan Villa),它看上去是一个结构主

义式的方案,但是在内部表现了完全不同的

感觉。图 7中可以看出各面墙体围护着一个

个房间,但它们又同时形成了层层叠叠的框

洞,使房间与房间不断开放,从而使各个空

间全部串在一起。此外特别的是它的屋顶,

每个坡使得各个房间的空间方向不断发生变

化,使一个看似均质的水平空间,同时产生

出不断变化的房间套着房间的效果。

3) “Room after Room”(房间接着房间)

图8是比利时建筑师比尔(Stéphane

Beel)的作品罗杰拉斐勒博物馆(Roger

Raveel Museum),它由一长串的房子构成,

剖面的高低错落配合着平面的凹凸变化, 剖

面上的折与平面上的折同时进行,一个接着

一个,不断衍生出各种各样的空间(图9)。

它们依次依赖而生,似乎获得了一个前进

的空间序列——其实是获得了一系列特别的

“房间一样的空间”。

Rooms暗示,Room的认识与房子的

空间构成有关,它并不比房子先行存在。这

与路易?康(L. Kahn)的Room概念有着根

本的区别。康也用房间来定义基本空间,并6 桃花源别墅(杭州,2006)模型7 桃花源别墅室内

8 罗杰拉斐勒博物馆(比利时麦克莱-安-德-列,1999)剖面、 平面01510m

这些特别的空间比对,宽大的走廊形成了展示它们的主要空间(图11)。

吉贡-古耶的这个房子出色地回应了康的Room 问题——如何在水平方向不用双墙等要素,而是通过房间的关系本身而获得一系列特别的房间,而且依然保持与自然的关系?房间上方的采光体,使房间的空间感非常特别(图12),更重要的是,这种空间感帮助产生了房间之外的房间——走廊房间,它因到处能感受到特殊的自然光而不再是普通的走廊。

这就是当代设计观念的一种显现,即如何同时思考关于房间(Room)的认识与房子(Building)的空间构成,从而既能扩展房间的内涵,又能扩展空间构成的可能——尽管这个博物馆的平面介于布扎和功能主义之间,

但已然获得了一个全新的空间构成方式。对我们来说,这些正是需要通过体积法以不断实现的当代的空间意图。

阿彭策尔利纳博物馆( Museum Liner Appenzell)是吉贡-古耶的另一个方案,它的房间感的出现与房间关系的出现也是同时的。通过图13可以发现,因为门洞的开启方式不同,所以各个房间互相连接的方式各不一样,因此,房子的平面也似乎在不断变换。同样也可以说,每个房间存在于不同的房间群之中,通过门洞的开口方向和屋顶的共同组织,构成了自己作为“房间一样的空间”的特性(图14)。

我们开始思考第2个问题——那什么是

以此开始房子的空间组织,但是他以房间的限定为优先,往往运用双层墙体表现包裹的效果,使每一个房间就像是一个腔体,体现了对布扎(BEAUX - ARTS)体系中厚墙空间的追忆。但这样使整个房子中的冗余空间非常之多,难以适应讲究“空间经济学”的现代。因此,Rooms 使我们能够运用新的办法创造“房间一样的空间”。

与康的设计相对比,图10是瑞士建筑师组合吉贡-古耶(Gigon & Guyer)1992年的作品基希纳博物馆(Kirchner Museum

Davos )。初看起来有些模棱两可,它有点类似布扎体系中的平面,只是充当各个房间之余的涂黑(poche)部分特别宽大; 它又有点类似功能主义中最普通的中走廊平面,但走廊明显不同寻常。这一博物馆的几个主要房间非常特别:顶上是一个个玻璃房子,形成了一个个特殊的采光体。可以想象,如果布灯或设置一个玻璃体作为自然体量架在上方,这个房间的光线会完全不一样。在房间之外人们看不见采光体,只觉得房间特别亮,光线特别均匀,构成了一个个光的空间。与

10 基希纳博物馆(瑞士达沃斯,1992)平面

11 基希纳博物馆走廊室内12 基希纳博物馆展厅室内

9 罗杰拉斐勒博物馆室内

01510m

“房间一样的空间”呢?

按照路斯的思路,房间的要点在于能否产生包裹的效果,所以包裹后面的事物并不重要,房间如何构筑也不重要——比如我们的周围是一圈壁毯,那么这种包着我们的东西与身体之间就会产生一种特别的关系,这是最重要的。那么如果进行包裹,最佳的办法就是运用特别的材料。比如,房顶、墙面、地面都是木头,包裹的效果肯定非常强烈,但这类房间未必适合身体。

与路斯设计颇有渊源的阿尔瓦罗?西扎最喜欢的办法是设计墙裙,墙裙之上为白色,墙裙的颜色和地板一样,那么一个房间就似乎分成了上下两个空间,同时形成了两种特别的包裹。图15就是西扎的典型设计,下面一半上面一半,在一个房间里好像产生了2种包裹的感觉。但更重要的是,西扎在设计中把3个房间串在了一起,最里一个房间的墙裙突然降低,一下子使每个房间都获得了彼此不同的空间感。在此,材料节制的介入,维持了包裹的效果,但它在3个不同空间不同的使用,使它的作用又不止于包裹。

那么,是否可以这样理解“房间一样的空间”:首先,需要显现出对身体包裹的效果;其次,需要帮助身体确定在房子之中的定位。定位可以是身体与自然之间的关系,但更多的是与房子之间别的空间的关系。

可以发现,康具有“in-between”(之间)效果的双墙,突出了包裹的效果,此外光经过两层墙到达了身体,让人和两层墙之外的自然发生关系——这是有意思的对当代建筑

的挑战,也就是Room的自我特征不能轻易

脱离与自然的关系,但是,这种方式以房间

为中心,难以构成新的“房间一样的空间”

方式,而这是体积法的追求。

除此之外,是否存在一种能去掉材料而

获得“房间一样空间”的方法呢?比如纯粹

的白色,包裹的效果没有那么强烈,又怎么

能够形成特定的效果?此外,有没有可能获

得一个对身体有特别感觉的东西,但又不再

使用包裹这个词?

图16是瑞士建筑师奥伽第(Valerio

Olgiati)的一个建筑——黄房子(Das Gelbe

Haus ),它的屋顶非常奇特,好像是4个象

限在旋转。因为一棵柱子4根梁,大梁上面

还有方向不同的小梁,所以获得了4个不同

的空间,但由于周围的窗子是均质的,使这

些空间统一在一个房间之内,于是在一个房

间之中出现了空间群。

图17是奥伽第的另一个房子考玛湖亭

(The Lake Cauma Projects) ,这似乎不符合

中国人设计亭子的方法,我们习惯于屋檐往

下压,往下压的好处在于:视域变平了,平

了使空间显得特别深远。而他的方法与此相

反,坡往上翻,一翻,人站在这个地方,顿

时感觉会被房子推出去,彻底冲破了对身体

的包裹,从而破除了身体与房间通常的关系。

但是,反过来,房间破除了,一个特定的空

间恰好建立了。

这2个例子的启示意义在于结构对于空

间的介入,结构通常隐藏在包裹之后,但它

同样能对身体发生作用。它们促使我们进一

步反思身体和空间的命题:它们难道只能是

习以为常的身体与身体所处的房间之间的关

系么?当代艺术家对此命题已有了非常多的

考虑,而我们建筑师呢?

显然,体积法中“房间一样的空间”其

实也是一种对房间边界的思考。同时,还是

对一种想象力的期许——而这种想象力需要

来自我们专业自身。

13 利纳博物馆( 瑞士阿彭策尔,1998)一层平面

14 利纳博物馆展厅室内

15 福尔诺斯教区中心(葡萄牙波尔图,1996)地下层室内16 黄房子(瑞士格劳宾登,1999) 入口层室内17 考玛湖亭(瑞士格劳宾登,2002) 室内

境的更多可能,而从环境里看起来房子也变小了。这说明若能使房子看上去小一点——未必真小——会使它易于适应环境,更重要的是它能促使重新分化房子的功能。比如西扎把向水的房间分成了3个房间,原有房间的关系也发生了变化,它们既面向水面,又能直面对方。

与此相似的是葡萄牙建筑师马特乌斯兄弟(Aires Mateus)设计的阿连特茹海岸之家(House on the Alentejo Coast,图19)。房子入口处设置了一个内凹的门廊,边上陈设了2块小小的石头,其实就是门阶。它像房间又不像房间,俨然一个空房间。这一门廊介于内-外之间,也形成了特定的“房间一样的空间”,既使两侧的房间产生了新的关系(图20),也使房子与环境发生了微妙的关系。

那么,又如何通过利用Inside – outside 的关系,实现合乎情景的布置呢?体积法的出发点之一是空间经济学,因而它需要内外的同时配合。另外,Inside – outside 本身并不只是通常的视觉关系,而是空间关系的体现。

因此,如果从外而内首先需要以尽可能小的体量以应对环境,从而为环境留出更大的、富有特征的空,进而尽力利用这些空引发内部空间的变化。其次需要以尽量准确的体量变化应对环境,捕捉环境线索,比如负有盛名的苏黎世盒子(swiss box),其体量变化常常切中内外关系的要害。

举例来说,假设环境对房子的要求非常明确,就是一个盒子,若需要房子更多地和

4 布置(Plan)

由上可知,体积法所指的Room,与以自己为中心的房间非常不一样。这些房间在整个房子之中有着特殊的存在感,它们往往依赖Rooms 存在,在空间构成的关系中存在并呈现。此外,这些房间还促使房子更好地存在于环境之中,反之,与自然的关系也能促使它们的生成。

那么,如何合乎情景地把房间布置(Plan)在一起?它们可以通过各种途径来实现。“Inside -Outside”(内-外)的关系常常

成为运用体积法进行布置的起点,接着需要一系列Rooms 的构建,这些都需要一个合乎逻辑又需要想象力的过程。

以图18西扎设计的马约卡住宅(House in Majorca ) 为例。通常面向水面的建筑,房里的人希望房子大,可以看到更多的水,房外的人希望房子小,不希望干扰环境——西扎的设计十分简明,他在面水的体块之中设置了一个空,也可以理解为在2个向水的房间中套了1个室外的空房间,构建成了一个房间群(Rooms)。这样使房子获得了面向环

18 马约卡住宅 (西班牙马约卡岛,2007) 邻水面外观

21 阿尔科文达思市民中心(西班牙阿尔科文达思,1999) 主入口外观19 阿连特茹海岸之家(葡萄牙阿连特茹,2000)入口外观

20 阿连特茹海岸之家入口室内

22 阿尔科文达思市民中心空间关系轴测

注释

1) 本文为体积法研究的第1部分,后续的体积法(2)将主要探讨与之相关的空间设计方法,它的运用,以及对它的反思与期望。参考文献

[1] Max Risselada. Rumple versus Plan Libre.

Rizzoli Internantional Publications, 1988.图片来源图1:Ralf Bock, Adolf loos works and projects, Skira Editore S.p.A. Palazzo Casati Stampa via Torino 61 20123 Milano Italy, 2007: 237.图2:Max Risselada, Rammplan versus Plan libre,Rizzoli International Publication, 1988: 89.图3:Ralf Bock, Adolf loos works and projects, Skira Editore S.p.A. Palazzo Casati Stampa via Torino 61 20123 Milano Italy, 2007: 245.图4、5:Antonio Pizza, Alberto campo baeza works and projects, Editorial Gustavo Gill, 1999: 75, 77.图6、7:世界建筑 n.203 全球与地域 戴卫?奇普菲尔德建筑事务所:99, 98.图8、9:El Croquis 125 Stephane Beel: 60, 65.图10:Gigon &Guyer,GIGON &GUYER ARCHITECTS works&projects 1989-2000,EDITORIAL GUSTAVO GILI ,SA,Bacelona,2000,P14图11~14:El Croquis 102 Gigon+Guyer: 47, 48, 90, 98.图15:Kenneth Frampton, Alvaro Siza complete works, phaidon, 1995: 391.图16、17:2G n.37 Valerio Olgiati: 71, 57.图18:El Croquis 140 ALVARO SIZA: 191.图19、20:世界建筑 n268,艾利丝 马特乌斯, 26, 27, 30图21、22:桑丘&玛德丽德霍斯.桑丘-玛德丽德霍斯事务所设计作品,北京:中国建筑工业出版社,2005: 85,87.图23、24:格哈德?马克. 赫尔佐格与德梅隆全集(第1卷 1978年-1992年),北京:中国建筑工业出版社,2010: 133, 134.

外界接触,那么内凹一个体块就是最简洁的办法。显然,并不是在盒子上开洞就能轻易满足内部空间的排布,需要仔细地处理剖面,促使一系列空间的连续反应。与此相仿,在盒子中加入一个玻璃体,也可以既不影响环境,又能满足房子对外部有更多接触的可能。

如果体积法从内往外则需要注重分化出因环境需求而不同的房间群,从而产生各个房间的特征。其次需要注意重新配置各个空间的容量,以重组各类房间。

举例来说,假定一栋3层办公楼,每层均采用内走廊,是典型的功能主义空间构成,没有特别的空间设置能自然地引导办公人员交流。体积法就会尝试在建筑体量不变的前提下,取消其中的一条走廊且使交通无碍,从而使多出的空间容量用作交流。可以想象,多出的空间若能与环境直接发生关系,这一引导交流的方式会更为自然,而原有办公空间与走廊的关系自然也会发生改变。

西班牙建筑师组合桑丘(Sancho)夫妇设计的阿尔科文达思市民中心(Alcobendas Civic Centre,图21)就是这样一个充分利用Inside – outside进行布置的设计。建筑师在极为有限的体量之内,分别设置了一个院子和一个玻璃体,从而同时应对了对内部空间的分化和外部环境的利用。图22清晰地表达了设计者的想法,楼梯、院子、大空间,形成了整体的空间关系。

赫尔佐格和德梅隆的早期设计作品——艺术品收藏者之家(House for an art collector,图23)更是一个特意强化了Inside

– outside 关系来进行布置空间的例子。他们在设计中沿着一个长长的坡,设置了一个带坡顶的体量,一个院子,另外,在坡顶和院子之间设置了一个平行于等高线的特殊体量。如果说西扎在马约卡住宅中通过挖空体量来启动空间布置的话,那么赫尔佐格和德梅隆就是通过小心地在房子的Inside – outside 之间加入了一个体量,来统合整个房子的空间布置。

事实上,基地中的坡非常之缓,如果房子不够长,坡就不易显现,房子和地的关系就没那么动人,但是长会使房子的方向感太强而失之于空间的单一,因此长的同时还希望能产生空间的多义性。他们的策略是在坡顶端部设置院子,希望以此帮助空间能发生变化(图24),并用围墙轻轻遮住以延续坡顶和坡的关系。但若果只是这样,院子是脱离房子而存在的,房子、院子、长坡是分离的。这时,房子和院子之间插入的横向体量就产生了意义,成了设计之眼。它似乎把坡顶体量截断,并形成了通向院子的一个堤坝,但是它一下子使得院子的空间感变得强烈起来,成了一个空的房间,从而有力地帮助房子完成了空间构成上的转向。同时它还暗示,长坡在房、院之间形成的空间作用也不尽相同,这使房子和地的关系一下微妙起来。

综上所述,体积法是从对空间的一种认识开始的,它强调“房间一样的空间”以应对当代世界的空间漠视。体积法还注重房间和房子之间的构成关系,从而促使对身体行为的思考。此外,体积法还以“经济”的姿

态对待环境,从而促使房子内外关系的构建。所有这些,使它产生了广泛的运用可能。

23 泰维尔艺术收藏者之家(瑞士,1986)模型照片 24 泰维尔艺术收藏者之家外观

算法设计与分析习题答案1-6章

习题1 1. 图论诞生于七桥问题。出生于瑞士的伟大数学家欧拉(Leonhard Euler ,1707—1783)提出并解决了该问题。七桥问题是这样描述的:一个人是否能在一次步行中穿越哥尼斯堡(现 在叫加里宁格勒,在波罗的海南岸)城中全部的七座桥后回到起点,且每座桥只经过一次, 图是这条河以及河上的两个岛和七座桥的草 图。请将该问题的数据模型抽象出来,并判断此问题是否有解。 七桥问题属于一笔画问题。 输入:一个起点 输出:相同的点 1, 一次步行 2, 经过七座桥,且每次只经历过一次 3, 回到起点 该问题无解:能一笔画的图形只有两类:一类是所有的点都是偶点。另一类是只有二个奇点的图形。 2.在欧几里德提出的欧几里德算法中(即最初的欧几里德算法)用的不是除法而是减法。请用伪代码描述这个版本的欧几里德算法 =m-n 2.循环直到r=0 m=n n=r r=m-n 3 输出m 3.设计算法求数组中相差最小的两个元素(称为最接近数)的差。要求分别给出伪代码和C++描述。 编写程序,求n 至少为多大时,n 个“1”组成的整数能被2013整除。 #include using namespace std; int main() { double value=0; 图 七桥问题

for(int n=1;n<=10000 ;++n) { value=value*10+1; if(value%2013==0) { cout<<"n至少为:"< using namespace std; int main () { double a,b; double arctan(double x);圣经上说:神6天创造天地万有,第7日安歇。为什么是6天呢?任何一个自然数的因数中都有1和它本身,所有小于它本身的因数称为这个数的真因数,如果一个自然数的真因数之和等于它本身,这个自然数称为完美数。例如,6=1+2+3,因此6是完美数。神6天创造世界,暗示着该创造是完美的。设计算法,判断给定的自然数是否是完美数 #include using namespace std; int main() { int value, k=1; cin>>value; for (int i = 2;i!=value;++i) { while (value % i == 0 ) { k+=i;有4个人打算过桥,这个桥每次最多只能有两个人同时通过。他们都在桥的某一端,并且是在晚上,过桥需要一只手电筒,而他们只有一只手电筒。这就意味着两个人过桥后必须有一个人将手电筒带回来。每个人走路的速度是不同的:甲过桥要用1分钟,乙过桥要用2分钟,丙过桥要用5分钟,丁过桥要用10分钟,显然,两个人走路的速度等于其中较慢那个人的速度,问题是他们全部过桥最少要用多长时间? 由于甲过桥时间最短,那么每次传递手电的工作应有甲完成 甲每次分别带着乙丙丁过桥 例如: 第一趟:甲,乙过桥且甲回来

《递归算法与递归程序》教学设计

递归算法与递归程序 岳西中学:崔世义一、教学目标 1知识与技能 (1) ?认识递归现象。 (2) ?使用递归算法解决冋题往往能使算法的描述乘法而易于表达 (3) ?理解递归三要素:每次递归调用都要缩小规模;前次递归调用为后次作准备:递归调用必须有条件进行。 (4) ?认识递归算法往往不是咼效的算法。 (5) ? 了解递归现象的规律。 (6) ?能够设计递归程序解决适用于递归解决的问题。 (7) ?能够根据算法写出递归程序。 (8) ? 了解生活中的递归现象,领悟递归现象的既有重复,又有变化的特点,并且从中学习解决问题的一种方法。 2、方法与过程 本节让同学们玩汉诺塔的游戏,导入递归问题,从用普通程序解决斐波那契的兔子问题入手,引导学生用自定义了一个以递归方式解决的函数过程解决问题,同时让同学们做三个递归练习,巩固提高。然后让学生做练习(2) 和练习(3)这两道题目的形式相差很远,但方法和答案却是完全相同的练习,体会其中的奥妙,加深对递归算法的了解。最后用子过程解决汉诺塔的经典问题。 3、情感态度和价值观 结合高中生想象具有较强的随意性、更富于现实性的身心发展特点,综合反映出递归算法的特点,以及递归算法解答某些实践问题通常得很简洁,从而激发学生对程序设计的追求和向往。 二、重点难点 1、教学重点 (1) 了解递归现象和递归算法的特点。 (2) 能够根据问题设计出恰当的递归程序。 2、教学难点 (1) 递归过程思路的建立。 (2) 判断冋题是否适于递归解法。 (3) 正确写出递归程序。 三、教学环境 1、教材处理 教材选自《浙江省普通高中信息技术选修:算法与程序设计》第五章,原教材的编排是以本节以斐波那契的兔子问题引人,导出递归算法,从而自 定义了一个以递归方式解决的函数过程。然后利用子过程解决汉诺塔的经典问题。 教材经处理后,让同学们玩汉诺塔的游戏,导入递归问题,从用普通程序解决斐波那契的兔子问题入手,引导学生用自定义了一个以递归方式解决的函数过程解决问题,同时让同学们做三个递归练习,巩固提高。然后让学生做练习⑵ 和练习

3.2.8递归函数程序设计 - 递归函数程序设计_实验项目

实验项目一 1.实验名称:求斐波那契数列项 2.实验目的: (1)熟练掌握递归函数的定义、实现与调用方法。 (2)熟练掌握循环与分支结构。 3.实验任务 (1)实验内容:编写求斐波那契数列项的函数,返回值为第n项值。斐波那契数列的定义为: f(0)=0,f(1)=1 f(n)=f(n-2)+f(n-1) (n>1) (2)实验要求:输入正整数n,输出斐波那契数列前n项,每行5个。要求用递归方法,并写出相应的主函数。 测试案例: 4.实验分析 (1)问题分析:问题的定义本身就是一个递归表示法: 递归出口:f(0)=0,f(1)=1 递归公式:f(n)=f(n-2)+f(n-1) (n>1) 有了这2个关键点,程序变得简单。 (2)实现要点:用函数fib(n)表示第n项斐波那契数列值,主函数循环调用fib(i),便可产生斐波那契数列前n项。 5.实验思考题 请比较递推法和递归法实现的不同。 实验项目二 1.实验名称:将正整数n转换为二进制 2.实验目的: (1)熟练掌握递归思想。 (2)熟练掌握递归函数的定义、实现与调用方法。 3.实验任务 (1)实验内容:输入1 个正整数n,将其转换为二进制后输出。 (2)实验要求:要求定义并调用函数 dectobin(n),它的功能是输出 n 的二进制。

测试案例: 4.实验分析 (1)问题分析:首先应了解手工计算的过程。通过不断整除2得到余数,直到商为零为止,将得到的余数系列逆序输出,即为转换的二进制数。 (2)实现要点:对于递归程序设计的2个关键点: 递归式:不断除2,输出余数 递归出口:商为0 余数系列逆序输出解决方法:先递归调用,再输出,dectobin(n)= dectobin(n/2)+输出(n %2)。由于是先递归,再输出,因此递归会不断深入直到出口为止,然后返回回来后才能输出,达到了逆序的目的。 5.实验思考题 如何将本例推广到任意进制数的转换输出。 实验项目三 改正下列程序中的错误,输入一个整数n (n 0)和一个双精度浮点数x,输出函数P(n,x)的值(保留2位小数)。 1 (n=0) P(n, x) = x (n=1) ((2n-1)*P(n-1,x)-(n-1)*P(n-2,x))/n (n>1) 输入输出示例 Enter n, x: 10 1.7 P(10,1.70) = 3.05 源程序(有错误的程序) #include int main(void) { int n; double x, result; printf(“Enter n, x: ”); scanf("%d%lf", &n, &x); result = p(n,x); printf("P(%d,%.2lf) = %.2lf\n", n, x, result); return 0; } double p(int n, double x) {

算法分析与设计习题集整理

算法分析与设计习题集整理 第一章算法引论 一、填空题: 1、算法运行所需要的计算机资源的量,称为算法复杂性,主要包括时间复杂度和空间复杂度。 2、多项式10()m m A n a n a n a =+++L 的上界为O(n m )。 3、算法的基本特征:输入、输出、确定性、有限性 、可行性 。 4、如何从两个方面评价一个算法的优劣:时间复杂度、空间复杂度。 5、计算下面算法的时间复杂度记为: O(n 3) 。 for(i=1;i<=n;i++) for(j=1;j<=n;j++) {c[i][j]=0; for(k=1;k<=n;k++) c[i][j]= c[i][j]+a[i][k]*b[k][j]; } 6、描述算法常用的方法:自然语言、伪代码、程序设计语言、流程图、盒图、PAD 图。 7、算法设计的基本要求:正确性 和 可读性。 8、计算下面算法的时间复杂度记为: O(n 2) 。 for (i =1;i

高中信息技术 算法与程序设计-递归算法的实现教案 教科版

递归算法的实现 【基本信息】 【课标要求】 (三)算法与问题解决例举 1. 内容标准 递归法与问题解决 (1)了解使用递归法设计算法的基本过程。 (2)能够根据具体问题的要求,使用递归法设计算法、编写递归函数、编写程序、求解问题。 【教材分析】 “算法的程序实现”是《算法与程序设计》选修模块第三单元的内容,本节课是“递归算法的程序实现”,前面学习了用解析法解决问题、穷举法解决问题、在数组中查找数据、对数进行排序以及本节的前一小节知识点“什么是自定义函数”的学习,在学习自定义函数的基础上,学习递归算法的程序实现是自定义函数的具体应用,培养学生“自顶向下”、“逐步求精”的意识起着重要的作用。 『递归算法在算法的学习过程中是一个难点,在PASCAL和C语言等程序语言的学习过程中,往往是将其放在“函数与过程”这一章节中来讲解的。递归算法的实现也是用函数或是过程的自我调用来实现的。从这一点上来讲,作者对教材的分析与把握是准确的,思路是清晰的,目标是明确的。』 【学情分析】 教学对象是高中二年级学生,前面学习了程序设计的各种结构,在学习程序设计各种结构的应用过程中培养了用计算机编程解决现实中问题的能力,特别是在学习循环语句的过程中,应用了大量的“递推”算法。前一节课学习了如何自定义函数,在此基础上学习深入学习和体会自定义函数的应用。以递推算法的逆向思维进行求解问题,在学习过程中体会递归算法的思想过程。多维度的思考问题和解决问题是提高学生的学习兴趣关键。 『递归算法的本质是递推,而递推的实现正是通过循环语句来完成的。作者准确把握了学生前面的学习情况,对递归算法的本质与特征也分析的很透彻,可以说作者对教学任务的分析是很成功的,接来就要看,在成功分析的基础上作者是如何通过设计教学来解决教学难点的了。』 【教学目标】

算法设计与分析排列树递归推算

n = 3 Backtrack(1) t=1 for i = 1 to 3 i=1 Swap(x[1], x[1]) t=1时,x[1]取了x[1]=1 Backtrack(2) -----> t = 2 for i = 2 to 3 i=2 swap(x[2], x[2]) t=2时,x[2]取了x[2]=2 Backtrack(3) -----> t=3 for i = 3 to 3 swap(x[3],x[3]) t=3时,x[3]取了x[3]=3 Backtrack(4) --->

t = 4 > 3 输出(1,2,3) swap(x[3],x[3]) swap(x[2],x[2]) i=3 swap(x[2],x[3]) x[2]=3, x[3]=2 t=2时,x[2]取了3 Backtrack(3) -------> t=3 for i = 3 to 3 swap(x[3],x[3]) t=2时,x[3]取了x[3]=2 Backtrack(4) ---> t = 4 > 3 输出(1,3,2) swap(x[3],x[3]) swap(x[2],x[3]) x[2]=2, x[3]=3 Swap(x[1], x[1]) i=2 Swap(x[1], x[2]) x[1]=2, x[2]=1 t=1时,x[1]取了2 Backtrack(2) -----> t = 2 for i = 2 to 3 i=2 swap(x[2], x[2]) t=2时,x[2]取了x[2]=1 Backtrack(3) -----> t=3 for i = 3 to 3 swap(x[3],x[3]) t=3时,x[3]取了x[3]=3 Backtrack(4) --->

常见沥青混合料设计方法的比较

各种沥青混合料设计方法的比较 目前,国内外路面设计者对沥青混合料配合比设计方法的研究很多,纵观世界各国,现行用于沥青混合料配合比设计的方法主要有:马歇尔方法、维姆方法、Superpave方法、GTM方法以及贝雷法等,但其中又以马歇尔法运用得最为广泛。我国《公路沥青路面施工技术规范》(JTG F40-2004)规定,沥青混合料配合比设计采用马歇尔方法;同时规定,当采用其他方法设计沥青混合料配合比时,应按规范规定进行马歇尔试验及各项配合比检验,并报告不同设计方法的试验结果。不同混合料设计方法都有各自的特点,本文主要介绍几种主要设计方法的原理,并和马歇尔设计方法进行比较分析。 1 马歇尔设计方法原理与设计步骤 1.1设计原理 马歇尔法是由美国密西西比州公路局的Bruce Marshell提出,在第二次世界大战期间开始使用,后来美国陆军工程兵团对其进行了改进和完善。马歇尔设计法的基本原理是体积设计法,即在分析研究沥青混合料性能时,以沥青结合料与集料成分的体积比例作为计算依据,最终要达到的主要指标也是体积指标,如空隙率VV、矿料间隙率VMA、沥青饱和度VFA等。通过沥青混合料组成材料的不同体积比例的组合,经过沥青混合料的拌和、试件的击实成型,最后测定试件的体积参数,从而确定沥青混合料各组成材料的比例。 1.2设计步骤 沥青混合料配合比马歇尔设计方法分为目标配合比设计、生产配合比设计、生产配合比验证三个阶段。三个阶段的设计原理是一致的,即按照体积法进行设计。其最完整的设计步骤是在目标配合比设计阶段,设计过程如下。 ①原材料试验。即所有组成材料的物理、化学、力学性能试验,以确定其是否满足使用要求,从而确定其是否合格。 ②确定混合料的组成级配。按照要求的级配与所提供的各级集料的筛分,选好各级集料的比例,使混合料矿料的级配满足要求。 ③成型试件。根据经验估算沥青的最佳用量,以估算的最佳沥青用量为中值,以0.5%为步长,分别成型5个不同油石比:(估算最佳沥青用量-1.0%)、(估算最佳沥青用量-0.5%)、估算最佳沥青用量、(估算最佳沥青用量+0.5%)、(估算最佳沥青用量+1.0%)试件。 ④测定和计算试件的力学与体积指标,并绘制不同指标和沥青用量的关系曲线。确定最佳油石比。 ⑤对最佳油石比进行检验。 马歇尔设计方法操作简单,因此仍然是目前用的最多的设计方法,可以适用各种场合。 2 Superpave方法与马歇尔设计方法的比较 2.1 Superpave方法简介

算法设计与分析习题

《算法设计与分析》习题 第一章算法引论 1、算法的定义 答:算法是指在解决问题时,按照某种机械步骤一定可以得到问题结果的处理过程。 通俗讲,算法:就是解决问题的方法或过程。 2、算法的特征 答:1)算法有零个或多个输入;2)算法有一个或多个输出; 3)确定性;4)有穷性 3、算法的描述方法有几种 答:自然语言、图形、伪代码、计算机程序设计语言 4、衡量算法的优劣从哪几个方面 答:(1) 算法实现所耗费的时间(时间复杂度); (2) 算法实现所所耗费的存储空间(空间复杂度); (3) 算法应易于理解,易于编码,易于调试等等。 5、时间复杂度、空间复杂度定义 答:指的是算法在运行过程中所需要的资源(时间、空间)多少。 6、时间复杂度计算: {i=1; while(i<=n) i=i*2; } 答:语句①执行次数1次, 语句②③执行次数f(n), 2^f(n)<=n,则f(n) <=log2n; 算法执行时间: T(n)= 2log2n +1 时间复杂度:记为O(log2n) ; 7.递归算法的特点 答:①每个递归函数都必须有非递归定义的初值;否则,递归函数无法计算;(递归终止条件) ②递归中用较小自变量函数值来表达较大自变量函数值;(递归方程式) 8、算法设计中常用的算法设计策略 答:①蛮力法;②倒推法;③循环与递归;④分治法; ⑤动态规划法;⑥贪心法;⑦回溯法;⑧分治限界法 9、设计算法: 递归法:汉诺塔问题兔子序列(上楼梯问题) 整数划分问题 蛮力法:百鸡百钱问题 倒推法:穿越沙漠问题

答:算法如下: (1) 递归法 汉诺塔问题 void hanoi(int n, int a, int b, int c) {if (n > 0) { hanoi(n-1, a, c, b); move(a,b); hanoi(n-1, c, b, a); } } 兔子序列(fibonaci 数列 ) 递归实现: Int F(int n) { if(n<=2) return 1; else return F(n-1)+ F(n-2); } 上楼梯问题 Int F(int n) { if(n=1) return 1 if(n=2) return 2; else return F(n-1)+ F(n-2); } 整数划分问题 问题描述:将正整数n 表示成一系列正整数之和,n=n1+n1+n3+… 将最大加数不大于m 的划分个数,记作q(n,m)。正整数n 的划分数 p(n)=q(n,n)。 可以建立q(n,m)的如下递归关系: 递归算法: Int q( int n, int m){ if(n<1||m<1) return 0; If((n=1)||(m=1)) return 1; If (n>=<==-+--+=11,1),()1,()1,(1),(1),(m n m n m n m n m m n q m n q n n q n n q m n q

马歇尔试验温度及试验技术指标

马歇尔试验温度及试验技术指标 为了使马歇尔试验击实温度与施工时温度相匹配,并考虑制作混合料马歇尔试件的温度对试件的技术指标、沥青混凝土的力学性能和沥青面层实际使用寿命、性能等的影响,在制作马歇尔试件时,应该严格掌握矿料的沥青的加热温度以及沥青混合料的击实温度。试验技术指标包括: 空隙率:空隙率是评价沥青混合料压实程度的指标。空隙率的大小,直接影响沥青混合料的技术性质,空隙率大的沥青混合料,其抗滑性和高温稳定性都比较好,但其抗渗性和耐久性明显降低,而且对强度也有影响。沥青混合料的空隙率是指空隙的体积占沥青混合料总体积的百分率,它是由理论密度和实测密度求得,应符合3%一4%. 沥青饱和度:是指压实沥青混合料试件中沥青实体体积占矿料骨架实体以外的空间体积的百分率,又称为沥青填隙率,应符合65%~75%. 稳定度:稳定度是指沥青混合料在外力作用下抵抗变形的能力。在规定试验条件下,采用马歇尔仪测定的沥青混合料试件达到最大破坏的极限荷载,应大于7.5kN. 流值:流值是评价沥青混合料抗塑性变形能力的指标。在马歇尔稳定度试验时,当试件达到最大荷载时,其压缩变形值,也就是此时流值表上的读数,即为流值(FL),以0.1mm计,应符合20~40(0.1mm)。

残留稳定度:残留稳定度是反映沥青混合料受水损害时抵抗剥落的能力。浸水马歇尔稳定度试验方法与马歇尔试验基本相同,只是将试件在60±10C恒温水槽中保温48h,然后,再测定其稳定度。浸水后的稳定度与标准马歇尔稳定度的百分比即为残留稳定度,应大于75%. (资料素材和资料部分来自网络,供参考。可复制、编制,期待你的好评与关注)

算法设计与分析:递归与分治法-实验报告

应用数学学院信息安全专业班学号姓名 实验题目递归与分治法 综合实验评分表

实验报告 一、实验目的与要求 1.掌握递归算法的设计思想 2.掌握分治法设计算法的一般过程 3.理解并掌握算法渐近时间复杂度的分析方法 二、实验内容 1、折半查找的递归算法 (1)源程序代码 #include #include using namespace std; int bin_search(int key[],int low, int high,int k) { int mid; if(low>high) return -1; else{ mid = (low+high) / 2; if(key[mid]==k) return mid; if(k>key[mid]) return bin_search(key,mid+1,high,k); else return bin_search(key,low,mid-1,k); } } int main() { int n , i , addr; int A[10] = {2,3,5,7,8,10,12,15,19,21}; cout << "在下面的10个整数中进行查找" << endl; for(i=0;i<10;i++){ cout << A[i] << " " ; } cout << endl << endl << "请输入一个要查找的整数" << endl; cin >> n; addr = bin_search(A,0,9,n);

if(-1 != addr) cout << endl << n << "是上述整数中的第" << addr << "个数" << endl; else cout << endl << n << "不在上述的整数中" << endl << endl; getchar(); return 0; } (2)运行界面 ①查找成功 ②查找失败

递归算法详解

递 归 冯文科 一、递归的基本概念。 一个函数、概念或数学结构,如果在其定义或说明内部直接或间接地出现对其本身的引 用,或者是为了描述问题的某一状态,必须要用至它的上一状态,而描述上一状态,又必须用到它的上一状态……这种用自己来定义自己的方法,称之为递归或递归定义。在程序设计中,函数直接或间接调用自己,就被称为递归调用。 二、递归的最简单应用:通过各项关系及初值求数列的某一项。 在数学中,有这样一种数列,很难求出它的通项公式,但数列中各项间关系却很简单,于是人们想出另一种办法来描述这种数列:通过初值及n a 与前面临近几项之间的关系。 要使用这样的描述方式,至少要提供两个信息:一是最前面几项的数值,一是数列间各项的关系。 比如阶乘数列 1、2、6、24、120、720…… 如果用上面的方式来描述它,应该是: ???>==-1 ,1,11n na n a n n 如果需要写一个函数来求n a 的值,那么可以很容易地写成这样:

这就是递归函数的最简单形式,从中可以明显看出递归函数都有的一个特点:先处理一 些特殊情况——这也是递归函数的第一个出口,再处理递归关系——这形成递归函数的第二个出口。 递归函数的执行过程总是先通过递归关系不断地缩小问题的规模,直到简单到可以作为 特殊情况处理而得出直接的结果,再通过递归关系逐层返回到原来的数据规模,最终得出问题的解。 以上面求阶乘数列的函数)(n f 为例。如在求)3(f 时,由于3不是特殊值,因此需要计 算)2(*3f ,但)2(f 是对它自己的调用,于是再计算)2(f ,2也不是特殊值,需要计算 )1(*2f ,需要知道)1(f 的值,再计算)1(f ,1是特殊值,于是直接得出1)1(=f ,返回上 一步,得2)1(*2)2(==f f ,再返回上一步,得62*3)2(*3)3(===f f ,从而得最终解。 用图解来说明,就是 下面再看一个稍复杂点的例子。 【例1】数列}{n a 的前几项为

递归下降语法分析程序的设计说明

编译方法实验报告实验名称:简单的语法分析程序设计

实验要求 1.功能:对简单的赋值语句进行语法分析 随机输入赋值语句,输出所输入的赋值语句与相应的四元式 2.采用递归下降分析程序完成(自上而下的分析) 3.确定各个子程序的功能并画出流程图 4.文法如下:

5.编码、调试通过 采用标准输入输出方式。输入输出的样例如下: 【样例输入】 x:=a+b*c/d-(e+f) 【样例输出】(说明,语句和四元式之间用5个空格隔开) T1:=b*c (*,b,c,T1) T2:=T1/d (/,T1,d,T2) T3:=a+T2 (+,a,T2,T3) T4:=e+f (+,e,f,T4) T5:=T3-T4 (-,T3,T4,T5) x:=T5 (:=,T5,-,x) 【样例说明】程序除能够正确输出四元式外,当输入的表达式错误时,还应能检测出语法错误,给出相应错误提示。 6.设计3-5个赋值语句测试实例,检验程序能否输出正确的四元式;当输入错误的句子时, 检验程序能够给出语法错误的相应提示信息。 7.报告容包括: 递归程序的调用过程,各子程序的流程图和总控流程图,详细设计,3-5个测试用例的程序运行截图及相关说明,有详细注释的程序代码清单等。

目录 1.语法分析递归下降分析算法 (5) 1.1背景知识 (5) 1.2消除左递归 (6) 2.详细设计及流程图 (6) 2.1 函数void V( ) // V -> a|b|c|d|e...|z . (6) 2.2 函数void A( ) // A -> V:=E (7) 2.3 函数void E() //E -> TE' (7) 2.4函数void T( ) // T -> FT' (8) 2.5函数void E1( ) //E'-> +TE'|-TE'|null (8) 2.6函数void T1() // T'-> *FT'|/FT'|null (9) 3.测试用例及截图 (9) 3.1测试用例1及截图 (9) 3.2测试用例2及截图 (10) 3.3测试用例3及截图 (11) 代码清单 (11)

GTM与马歇尔设计方法的对比研究

GTM与马歇尔设计方法的对比研究 在配合比设计过程中,由于交通形势的变化,传统的马歇尔设计方法已经不能适应当今的道路交通情况。而美国工程兵旋转压实剪切试验法(GTM)的出现给了我们一种新的方向来应对现在的重载交通和路面破坏情况来进行配合比设计。文章从两种设计方法的对比研究出发,指出了GTM的优越性。 标签:GTM;马歇尔;设计方法 引言 在如今的工程实际中,普遍采用的沥青混合料配合比设计方法主要由马歇尔法、superpave设计法和GTM法。而在这几种设计方法中,马歇尔设计法和GTM 法相对来说比较有代表性。 马歇尔设计法是我国道路工程界普遍采用的沥青混合料配合比设计方法。它主要参考体积指标来确定最佳油石比。而GTM设计法是美国工程兵在修建机场道路过程中发明的一种沥青混合料配合比设计方法。经过工程实践,形成了现在比较完善的GTM设计方法。 1 马歇尔设计法和GTM的优缺点对比 马歇尔设计法因为采用马歇尔试验方法,以体积指标来控制设计过程,操作简单,配套的仪器也相对来说价格低廉,所以早期普遍被大家接受,现阶段也是大部分工程人员采用的设计方法,对沥青路面的发展也起到了较大的推动作用。但是与其配套的击实方法中击实功采用的是上世纪80年代所对应的交通量,和现阶段的交通情况有很大的差别,所以设计结果相对来说没有实际意义。而且,随着经济的快速发展,交通的组成和施工工艺的发展,使得马歇尔设计方法的设计过程不能很好的模拟道路的实际情况,设计出来的结果跟道路实际有很大的差别,对实际的施工指导意义不是太大。 而GTM法在沥青混合料设计过程中,通过模拟汽车行驶过程中轮胎与路面的相互作用状态,达到模拟现场实际情况的目的,也相应的减少了击实过程中的骨料的破碎。并通过增大旋转压实过程中的压实功,从而能达到通车多年后路面实际情况。设计出来的沥青路面不论是抗车辙能力,还是路面病害都有所改进提高。但是由于GTM旋转压实仪价格比较昂贵,在一些小的工程项目中推广有一定的难度,不适合大规模的推广。 2 两种方法设计的沥青混合料路用性能对比 本研究通过实际试验来做出两种设计方法的路用性能对比。在试验过程中,马歇尔法和GTM法采用的沥青混合料设计中的原材料参数如下,而且各种材料均满足相关技术规范要求。配合比采用《沥青及沥青混合料试验规程》中AC25

算法设计及分析递归算法典型例题

算法递归典型例题 实验一:递归策略运用练习 三、实验项目 1.运用递归策略设计算法实现下述题目的求解过程。 题目列表如下: (1)运动会开了N天,一共发出金牌M枚。第一天发金牌1枚加剩下的七分之一枚,第二天发金牌2枚加剩下的七分之一枚,第3天发金牌3枚加剩下的七分之一枚,以后每天都照此办理。到了第N天刚好还有金牌N枚,到此金牌全部发完。编程求N和M。 (2)国王分财产。某国王临终前给儿子们分财产。他把财产分为若干份,然后给第一个儿子一份,再加上剩余财产的1/10;给第二个儿子两份,再加上剩余财产的1/10;……;给第i 个儿子i份,再加上剩余财产的1/10。每个儿子都窃窃自喜。以为得到了父王的偏爱,孰不知国王是“一碗水端平”的。请用程序回答,老国王共有几个儿子?财产共分成了多少份? 源程序: (3)出售金鱼问题:第一次卖出全部金鱼的一半加二分之一条金鱼;第二次卖出乘余金鱼的三分之一加三分之一条金鱼;第三次卖出剩余金鱼的四分之一加四分之一条金鱼;第四次卖出剩余金鱼的五分之一加五分之一条金鱼;现在还剩下11条金鱼,在出售金鱼时不能把金鱼切开或者有任何破损的。问这鱼缸里原有多少条金鱼? (4)某路公共汽车,总共有八站,从一号站发轩时车上已有n位乘客,到了第二站先下一半乘客,再上来了六位乘客;到了第三站也先下一半乘客,再上来了五位乘客,以后每到一站都先下车上已有的一半乘客,再上来了乘客比前一站少一个……,到了终点站车上还有乘客六人,问发车时车上的乘客有多少? (5)猴子吃桃。有一群猴子摘来了一批桃子,猴王规定每天只准吃一半加一只(即第二天吃剩下的一半加一只,以此类推),第九天正好吃完,问猴子们摘来了多少桃子? (6)小华读书。第一天读了全书的一半加二页,第二天读了剩下的一半加二页,以后天天如此……,第六天读完了最后的三页,问全书有多少页? (7)日本著名数学游戏专家中村义作教授提出这样一个问题:父亲将2520个桔子分给六个儿子。分完后父亲说:“老大将分给你的桔子的1/8给老二;老二拿到后连同原先的桔子分1/7给老三;老三拿到后连同原先的桔子分1/6给老四;老四拿到后连同原先的桔子分1/5给老五;老五拿到后连同原先的桔子分1/4给老六;老六拿到后连同原先的桔子分1/3给老大”。结果大家手中的桔子正好一样多。问六兄弟原来手中各有多少桔子? 四、实验过程 (一)题目一:…… 1.题目分析 由已知可得,运动会最后一天剩余的金牌数gold等于运动会举行的天数由此可倒推每一 天的金牌剩余数,且每天的金牌数应为6的倍数。 2.算法构造 设运动会举行了N天, If(i==N)Gold[i]=N; Else gold[i]=gold[i+1]*7/6+i;

递归程序设计 求N阶乘

(一)实验名称 递归程序设计求N阶乘 (二)实验内容和要求 设计一个汇编程序完成y=n!的计算。 要求:(1)能够根据用户输入的n值计算其阶乘,结果以十进制数显示; (2)基于递归程序结构,模块划分合理,具有清晰的入口和出口。(三)实验目的 (1)感受和学习递归程序的设计方法、技巧,完成递归程序设计 (2)学会运用堆栈传递参数的方法和技巧 (3)进一步感受和学习汇编语言程序设计的方法、技巧和调试过程(四)实验日期、时间和地点 时间:2010年11月22日 地点:微机高级实验室 (五)实验环境(说明实验用的软硬件环境及调试软件) 使用masm for windows (六)实验步骤(只写主要操作步骤,要简明扼要,还应该画出程序流程图或实验电路的具体连接图)

(七)实验结果(经调试通过的源程序的所有代码,应包含必要的说明文字)DATAS SEGMENT OPE DW 0,0,0,0 RESULT DB 16 DUP(0),'H',0DH,0AH,0AH,'$' NUM DB 3,0,3 DUP(0) MESS1 DB'Please input N(key Enter to quit):',0DH,0AH,'$' ERR_MESS DB'Error number,try again!',0DH,0AH,0AH,'$' FUNC DB 0,0,'!','=','$' DATAS ENDS STACKS SEGMENT STACK DW 1000 DUP(?) STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS DS_STR MACRO BUF ;显示字符串的宏 PUSH DX PUSH AX LEA DX,BUF MOV AH,09H INT 21H POP AX POP DX ENDM ;—————————————————————————————————— ————

沥青混合料马歇尔目标配合比设计概述

沥青混合料马歇尔目标配合比设计概述 关键词:沥青混合料马歇尔配合比 内容提要:沥青混合料是一种典型的粘弹性材料,影响其路用性能的因素可分为材料内在性能与外部环境条件。集料的岩石类型和质量(含颗粒形状、针片状颗粒含量、粉尘和泥土含量、软弱风化颗粒含量、压碎值、磨耗值等物理—力学指标),以及矿料级配,对沥青混凝土的物理—力学性质有较为关键的影响。本文结合实践,重点阐述了目标配合比设计的意义、重要影响因素、设计过程,为科研和生产应用提供相应的技术指导。 1.前言 近年来,沥青路面在公路面中占居主导地位。沥青路面具有行车舒适、噪音低、维修方便、可以回收利用等优点,在我国公路中占了极大比重,其中高速公路几乎全部是沥青路面,而在欧洲沥青路面占据公路总量比例的90%,在美国则高达96%。然而沥青路面在行车荷载、温度应力以及阳光、雨雪等不利条件作用下会发生车辙、疲劳、裂缝、坑槽、松散等破坏,大大影响了路面的使用性能。随着我国国民经济的迅速发展,公路交通量越来越大,轴载迅速增长,车速不断提高,沥青路面发生的质量问题也越来越多,有的前修后坏,有的使用周期达不到设计年限。这给沥青路面的使用品质提出了愈来愈高的要求,而影响沥青面层使用性能的重要因素是混合料的级配组成,因

而如何提高路面使用性能成为公路工作者关注的焦点。 2. 目标配合比设计的意义 沥青混合料随着材料科学的不断发展,其用途也越来越广泛,已到了跨行业、跨学科、互相渗透的非常广泛的领域。混合料配合比设计牵涉到几个方面的内容: (1)保证摊铺后的强度和所要求的其他性能和耐久性; (2)要满足施工工艺易于操作而又不遗留隐患的工作性; (3)在符合上述两项要求下选用合适的材料和计算各种材料用量; (4)对上述设计的结果进行试配、调整,使之达到工程的要求; (5)达到上述要求的同时,设法降低成本。 3. 目标配合比设计的重要影响因素 3.1级配类型的选择 选择合适的沥青混合料级配类型是确保沥青凝土路面面层质量的前提。沥青混凝土面层设计的一般依据是JTG F40-2004 《公路沥青路面施工技术规范》,JTG 052-2000《公路工程沥青基沥青混合料试验规程》,JTG E42-2005 《公路工程集料试验规程》。我国现行规范规定,上面层沥青混合料的最大粒径不宜超过该层厚的1/2,中面层沥青混合料的集料最大粒径不宜超过该层厚的2/3;沥青路面结构层混合料的集料最大公称尺寸不宜超过该层厚的1/3,对于粗的混合料,这个比例还应减小。由此分析,厚度一定的沥青面层,若按《公路沥青路面施工技术规范》最低要求选择级配类型,则沥青混合料集料的粒径普遍偏大,何况还有0~5%的颗粒超过最大粒径,这样势必对沥

算法设计与分析基础课后习题答案

Program算法设计与分析基础中文版答案 习题 5..证明等式gcd(m,n)=gcd(n,m mod n)对每一对正整数m,n都成立. Hint: 根据除法的定义不难证明: 如果d整除u和v, 那么d一定能整除u±v; 如果d整除u,那么d也能够整除u的任何整数倍ku. 对于任意一对正整数m,n,若d能整除m和n,那么d一定能整除n和r=m mod n=m-qn;显然,若d能整除n和r,也一定能整除m=r+qn和n。 数对(m,n)和(n,r)具有相同的公约数的有限非空集,其中也包括了最大公约数。故gcd(m,n)=gcd(n,r) 6.对于第一个数小于第二个数的一对数字,欧几里得算法将会如何处理?该算法在处理这种输入的过程中,上述情况最多会发生几次? Hint: 对于任何形如0<=m

设sqrt(x)是求平方根的函数) 算法Quadratic(a,b,c) 描述将十进制整数表达为二进制整数的标准算法 a.用文字描述 b.用伪代码描述 解答: a.将十进制整数转换为二进制整数的算法 输入:一个正整数n 输出:正整数n相应的二进制数 第一步:用n除以2,余数赋给Ki(i=0,1,2...),商赋给n 第二步:如果n=0,则到第三步,否则重复第一步 第三步:将Ki按照i从高到低的顺序输出 b.伪代码 算法 DectoBin(n) .n]中 i=1 while n!=0 do { Bin[i]=n%2; n=(int)n/2; i++; } while i!=0 do{ print Bin[i]; i--; } 9.考虑下面这个算法,它求的是数组中大小相差最小的两个元素的差.(算法略)对这个算法做尽可能多的改进. 算法 MinDistance(A[0..n-1])

递归算法的优缺点

递归算法的优缺点: ○ 1优点:结构清晰,可读性强,而且容易用数学归纳法来证明算法的正确性,因此它为设计算法、调试程序带来很大方便。 ○2缺点:递归算法的运行效率较低,无论是耗费的计算时间还是占用的存储空间都比非递归算法要多。 边界条件与递归方程是递归函数的二个要素 应用分治法的两个前提是问题的可分性和解的可归并性 以比较为基础的排序算法的最坏倩况时间复杂性下界为0(n·log2n)。 回溯法以深度优先的方式搜索解空间树T ,而分支限界法则以广度优先或以最小耗费优先的方式搜索解空间树T 。 舍伍德算法设计的基本思想: 设A 是一个确定性算法,当它的输入实例为x 时所需的计算时间记为tA(x)。设Xn 是算法A 的输入规模为n 的实例的全体,则当问题的输入规模为n 时,算法A 所需的平均时间为 这显然不能排除存在x ∈Xn B ,使得对问题的输入规模为n 拉斯维加斯( Las Vegas )算法的基本思想: 设p(x) 是对输入x 调用拉斯维加斯算法获得问题的一个解的概率。一个正确的拉斯维加斯算法应该对所有输入x 均有p(x)>0。 设t(x)是算法obstinate 找到具体实例x 的一个解所需的平均时间 ,s(x)和e(x)分别是算法对于具体实例x 蒙特卡罗(Monte Carlo)算法的基本思想: 设p 是一个实数,且1/2

数据结构实验:递归程序设计-精简

实验名称:实验六递归程序设计(实验报告) 一.实验目的: 1. 理解递归程序设计基本方法 2.理解递归的三大要素 二.实验内容: 1. 根据整数乘法运算的特点,给出整数乘法运算的递归实现 2、编写一个递归实现整数之间乘法运算的函数,并进行测试,验证设计的正确性。 二、实验原理: 1、什么是递归: 在定义一个过程或函数时出现调用本过程或本函数的成分,称之为递归。若调用自身,称之为直接递归。若过程或函数p调用过程或函数q,而q又调用p,称之为间接递归。 如果一个递归过程或递归函数中递归调用语句是最后一条执行语句,则称这种递归调用为尾递归。 2、以下三种情况使用递归: 2.1、问题的定义是递归的。 2.2、数据结构是递归的。 2.3、问题求解的过程是递归的。 3、递归算法的设计方法: 先将整个问题划分为若干个子问题,通过分别求解子问题,最后获得整个问题的解。而这些子问题具有与原问题相同的求解方法,于是可以再将它们划分成若干个子问题,分别求解,如此反复进行,直到不能再划分成子问题,或已经可以求解为止。 4.递归算法的执行过程: 4.1递归算法的执行过程是不断地自调用,直到到达递归出口才结束自调用过程; 4.2到达递归出口后,递归算法开始按最后调用的过程最先返回的次序返回; 4.3返回到最外层的调用语句时递归算法执行过程结束。 2.实验流程: 1、编辑主函数并初始化优先级队列; 2、通过函数调用完成程序设计; 3、运行编译函数,查看结果 四.程序代码: 1.主程序 #include "stdio.h"

mult(int x,int y) { if (y==1) return x; else return x+mult(x,y-1); } void main() { int j,k,m; printf("请输入两个乘数:\n"); scanf("%d %d",&j,&k); printf("结果为:\n"); m=mult(j,k); printf("%d",m); printf("\n"); } } 2.实验结果: 结果分析:由实验结果可知,成功的完成了对递归的操作,可见能实现乘数的功能实现,实验基本成功。 五.心得体会: 在本次试验中,主要是熟悉对递归操作,虽然这些操作的基本原理都比较熟悉,但是实际上机时还是出现了不少问题,但是有与编程能力太差,还有时间问题,所以实验不是很成功,对递归概念还是有些不清楚,所以还要再接再厉,争取有更多的收获。

相关文档
最新文档