第六章2_changed讲解
- 格式:ppt
- 大小:1.32 MB
- 文档页数:50
Chapter2 A Changed Global Reality 世界经济格局新变化Say this for the young century: we live in interesting times. Not quite 2 1⁄2 years ago, the world economy tipped into the most severe downturn since the Great Depression in the 1930s. World trade slowed sharply. Unemployment lines grew longer, especially in the old industrial economies. Financial institutions that had seemed as solid as granite disappeared as if they were no more substantial than a bunch of flowers in the hands of an old-style magician. 对于新世纪,我们得这样说:我们生活在一个有趣的时代。
差不多两年半之前,世界经济陷入了20世纪30年代经济大萧条时期以来最惨重的低迷状态。
世界贸易进程大幅放缓。
失业队伍也越来越快,这在旧工业经济体系表现尤为突出。
原来坚如磐石的金融机构也消失了,似乎还不如老套的魔术师变的花束看起来真实。
Given that the scale of the downturn was so epochal, it should not be surprising that the nature of the recovery would likewise be the stuff of history. And it has been. As they make their way to Davos for the annual meeting of the World Economic Forum (WEF) by helicopter, bus, car or train (which is the right way to do it), the members of the global economic and political elite will find themselves coming to terms with something they have never known before. 考虑到经济衰退幅度如此的跨时代,经济复苏进程会很慢也是理所当然的,对此我们不应该感到吃惊。
Chapter 6 Memory第6章记忆This chapter includes three modules: first, module 18 tells us how the memory works; second, module 19 introduces recalling in long-term memories; last, we will learn why we forgetting when our memory fails.MODULE 18 ENCODING, STORAGE AND RETRIEV AL OF MEMORYMemory is any system—human, animal, or machine—that encodes, stores, and retrieves information. The process of memory is encoding, storage and retrieval. Encoding is involving the modification of information to fit the preferred format for the memory system. Storage is involving the retention of encoded material over time. Retrieval is involving the location and recovery of information from memory.THE SENSORY REGISTERSScientific research on memory began with Ebbinghaus's experiments in the nineteenth century. Today the information-processing model of memory describes how information is encoded, organized, and stored in memory, and how it is retrieved from memory.THE SENSORY REGISTERSSensory registers are the entry points for raw information from all the senses. If we do not process this information further, it disappears.Visual and Auditory RegistersAs new visual information enters the registers, old information (the icon, or visual image) is "masked" almost immediately and disappears. Otherwise, the registers would overload as visual information piled up and became scrambled. Auditory information fades more slowly; the echo may last for several seconds.Initial ProcessingFrom the mass of incoming information, we select elements and hold them for further processing. In this process, called attention, we also give meaning to the information.SHORT-TERM MEMORYInformation that we attend to enters short-term memory (STM), also called primary memory and working memory. STM contains everything that we are consciously aware of at any instant. STM not only briefly stores information but also processes that information further.Capacity of STMSTM has its limits. Researches have found that STM can hold only as much information as can be repeated or rehearsed in 1.5 to 2 seconds, which is usually 5 to 10 separate bits of information. We can process more information by grouping it into larger meaningful units, a process called chunking.Encoding in STMInformation can be encoded for temporary storage in STM phonologically (according to the way it sounds), in visual form, or in terms of its meaning. Researchers conclude that STM has a greater capacity for material encoded visually than for information encoded phonologically.Retention and Retrieval in STMMaterial in STM disappears in 15 to 20 seconds unless it is rehearsed or practiced. According to decay theory, material is lost from STM simply because of the passage of time. Interference theory contends that interference from other information leads to forgetting from STM. Memory loss from STM is permanent. This prevents us from becoming overwhelmed with a mass of irrelevant, trivial, or unrelated data.Rote RehearsalThrough rote rehearsal, or maintenance rehearsal, we retain information in STM for a minute or two by repeating it over and over again. However, rote memorization does not promote long-term memory.Elaborative RehearsalElaborative rehearsal, or "the linking of new information in STM to familiar material stored in long-term memory," enables us to retain information for a longer time in STM. Through elaborative rehearsal, we process new data in a deeper and more meaningful way than through simple rote repetition.An accident or severe interference can make unrehearsed information disappear. Retrograde amnesia (the inability to recall events immediately preceding an accident or injury) is caused by an interruption in elaborative rehearsal.LONG-TERM MEMORYLong-term memory (LTM)is more or less permanent and stores everything we "know." Semantic memory is the portion of LTM that stores general facts and information in dictionary or encyclopedia form. Another facet of LTM, episodic memory, stores information rich with personal meaning.Encoding in LTMMost of the information in LTM seems to be encoded in terms of meaning. Through rehearsal, we extract the meaning of information and link it to as muchmaterial that is already in LTM as possible. The way in which we encode material for storage in LTM affects the ease with which we can retrieve it later on.Implicit MemoryImplicit memory refers to memories for information that either was not intentionally committed to LTM or is retrieved unintentionally from LTM. By contrast, explicit memory allows us to recall information that is intentionally committed to LTM and retrieved from LTM.Storage and Retrieval in LTMMost, if not all, of the information in LTM remains there more or less permanently, but we can''t always retrieve it when we need to, as the tip-of-the-tongue phenomenon shows.Especially disturbing events may cause us to repress memories or even to forget personal memories altogether (hysterical amnesia). Sometimes we "reconstruct" our memories for social or personal self-defense.Recognizing that past reactions and experiences affect our present memory, researchers developed the schema theory. A schema(plural: schemata) is a set of beliefs or expectations about something based on past experience, and it serves as a basis or standard for comparison with a new experience. Using schemata, we not only comprehend and interpret present circumstances but also streamline our retrieval processes. Retrieval is also aided by extensive cues and links with other material in LTM.BIOLOGICAL BASES OF MEMORYResearch has shown that some memories may be localized in certain portions of the brain; however, most memories are stored in various parts of the brain. One reason may be that several senses can contribute to one memory and might be stored in the brain''s centers for vision, speech, smell, and touch. Also, a recent finding shows that the basal forebrain may be involved in binding together information stored separately throughout the brain. The hippocampus is involved in transferring information from short-term to long-term memory.MODULE 19 RECALL LONG-TERM MEMORIESRetrieval cues are the “search terms” used to active a memory. It maybe a word, an emotion, or a sound.Flashbulb memoriesFlashbulb memories are a clear and vivid long-term memory of an especially meaningful and emotional event.Years after a dramatic or significant event occurs, people often have vivid memories of that event as well as the incidents surrounding it.These memories are known as flashbulb memories. According to the "now print" theory, the event triggers a mechanism in the brain that captures the memory, prints it, and stores it for a long time essentially unchanged. Recent research has challenged the assumptions that flashbulb memories are accurate and stable.Autobiographical MemoryAutobiographical memory refers to your recollection of events that happened in your life and when those events took place. People generally cannot remember events that occurred prior to age 2, and our earliest memories frequently concern events that significantly changed our lives or were particularly frightening.MODULE 20 FORGETTING: WHEN MEMORY FAILSSeveral reasons for ForgettingInformation in sensory and short-term memory appears to decay if it does not receive further processing. New information may "erase" old information in long-term memory. Proactive and retroactive interference may take place. Cue-dependent forgetting may occur when retrieval cues are inadequate. Some lapses in memory may be due to psychogenic amnesia, which is the forgetting of disturbing or shocking events and psychologists are divided about why this occurs.To the extent that information is apparently lost from LTM, researchers attribute the cause to interference from competing information. Interference may come from two directions: in retroactive interference, new information interferes with old information already in LTM; proactive interference refers to the process by which old information already in LTM interferes with new information. Interference affects both storage and retrieval of information.。
第六章非谓语动词非谓语动词指分词、不定式和动名词。
它们在句中不能单独作谓语,不受主语人称和数的限制,可充当除谓语外的各种句子成分。
在各类考试中,非谓语动词为语法测试的重中之重。
第一节分词英语中分词包括现在分词和过去分词,其基本形态为v-ing和v-ed。
现在分词与过去分词的区别主要表现在语态和时间概念上。
在语态上,现在分词(除被动式外)表示主动含义,过去分词表示被动含义。
在时间上,现在分词表示动作正在进行。
过去分词表示动作已完成。
例如:developing countries (发展中国家)/developed countries (发达国家),the touching tale(动人的传说) the touched audience(受感动的观众)。
1现在分词现在分词可在句中作定语及状语。
讲解要点(1)作定语1.现在分词作定语时多置于它所修饰的名词前。
例如:a pressing question (一个紧迫的问题),an embarrassing question (一个令人难堪的问题)②现在分词作定语时也可置于它所修饰的名词之后。
例如:There were no soldiers drilling.(没有士兵在训练。
)③现在分词短语一般都置于它所修饰的名词之后。
例如:a little child learning to walk (学走路的小孩子)(2)作状语讲解要点现在分词及其短语也可作状语,表示时间、原因、结果、条件、让步、方式或伴随情况等。
其动作可能发生在谓语动词之前或之后,也可能与谓语动词的动作同时发生。
1.表示时间。
例如:Walking on the street, I met an old classmate of mine.强调与谓语动词的动作同时发生时,现在分词之前可用连词when或while。
例如:When seeing those pictures, he couldn’t help thinking of his childhood.②表示原因。
第六章应用程序拖放的支持拖放是Eclipse提供的一种在一个或多个SWT应用之间重置部件或数据传输上提供的简单快捷的机制。
可以使用在普通SWT应用中,也是学习GEF的基础部分。
下面我将介绍运行拖放所需的几个部分。
这里首先声明一下,要运行附件中的例子,需要把FileListTree类里的FILE_ROOT 常量改为一个在你本地机器上存在的目录路径。
拖放源和放置地DragSource and DropTarget要实现拖放,就必须有拖动源和放置地。
源是数据传输过程中的数据提供者,目标是数据接收者。
他们分别绑定SWT的widget,需要注意的是同一widget只能帮定在一个源或目的上。
在鼠标拖动的过程中,我们可以 通过鼠标图形的变化来得知当前经过的是否是一个有效的放置地,这个过程叫做“drag over effect”。
鼠标图形同时也可以告诉我们在数据被放下之后,什么样的操作会被执 行,是拷贝还是移动还是别的什么。
如果我们拖动经过一个带有item的部件,比方说tree或者table,那么这个item会变成高亮,表明我们可以将数据放在这个item上,这个过程我们叫“drag under effect”。
Transfer(转换器)有了拖动源和放置目的之后,我们就需要一个载体来承载不同类型的数据,让这个载体用来在源和目的之间传递数据。
Transfer实际上是一个提供数据在Java representation(java表现)与platform specific representation(平台特有表现)之间进行交互的抽象类。
在Java对象与特定的平台之间进行format,下面是几个format:1。
文本转换器 TextTransfer String "hello world"2。
RTF转换器 RTFTransfer String "{\\rtf1\\b\\i hello world}"3。
Unit 2 Poems语言点编稿:牛新阁审稿:王春霞学习目标重点词汇convey, load, concrete, tease, contradictory, flexible, eventually, transform, appropriate, exchange, sponsor, blank重点短语take it easy, run out of, be made up of, in particular, try out, let out重点句型reason+从句知识讲解重点词汇【高清课堂:Unit 2词语精讲convey--load】convey【原句回放】Others try to convey certain emotions. 而有些诗试图传达某种感情。
【点拨】convey vt.传达;运送;表达1. A good photograph can often convey(传达)far more than words.好的照片经常比文字更能传情。
2. These results will enable us at least to convey(表明)a sense of progress.这些结果至少能表明一种进步的感觉。
3.Please convey (转达) my appreciation to your President.请代我向您的总裁/总统转达我的感激之情。
4. A taxi conveyed(运送)us to the train station. 一辆出租车把我们送到火车站。
(convey sb. to some place 用车送某人去某地)load【原句回放】Slowly the old man carries his load. 老人慢慢地挑着担子前行。
【点拨】load n. 负担,负重1. The men were struggling with their heavy loads.这些人因为负担沉重而挣扎着。
U2 重点词汇讲解1. injure比较wound, injure 和 hurtwound和injure均可指对身体的伤害。
但wound侧重利器或子弹对肉体的伤害,是故意的行为,常与战争有关;而injure强调人在意外事故中受伤,如机器造成的或运动中受伤。
hurt既可以是重伤,也可以是轻伤。
同时也可以是伤害感情。
1) She was _____ because she was not invited to the party. (hurt)2) He couldn’t come to work because he was knocked down by a bike and _____ hisfeet. (injured)3) In that battle two of our soldiers were killed and five were ________. (wounded)2. apart adj/ adv.(1) 相距 The two buildings are 100 meters apart.(2) 成碎片 The cup fell apart in my hand.(3) 分开,分离 You never see them apart these days.apart from 远离;除……外;1) Apart from a house in Nanjing, they also have one in Beijing. (=besides)2) Apart from a few words, I don’t know any French at all. (=Except for)3. junior (年少的,初级的)junior middle school 初中1) He is junior to me. 他的职位比我低。
2) He is three years my junior. 他比我小3岁4. in difficult timestimes 时代;时势in ancient times _______________________in the times of Henry III _____________________________the actors of the times _______________________________Times ______ (have) changed.5. dedicate(1) dedicate sth. to (doing) sth.1) Andy wants to dedicate more time to his hobbies.安迪想把更多的时间花在自己的爱好上。
Exercise6_2#include <iostream>using namespace std;int main(){// Prompt the user to enter the first numbercout << "Enter an integer: ";int max;cin >> max;int count = 1;// Prompt the user to enter the remaining five numbers for (int i = 1; i <= 5; i++) {cout << "Enter an integer: ";int temp;cin >> temp;if (temp > max) {max = temp;count = 1;}else if (temp == max)count++;}cout << "\n" <<"max is " << max << "\n" <<"the occurrence count is " << count;return 0;}Exercise6_4#include <iostream>using namespace std;int main(){double scores[100];double sum = 0;int count = 0;do{cout << "Enter a new score: ";cin >> scores[count];sum += scores[count];}while (scores[count++] >= 0);double average = (sum - scores[count]) / (count - 1);int numOfAbove = 0;int numOfBelow = 0;for (int i = 0; i < count - 1; i++)if (scores[i] >= average)numOfAbove++;elsenumOfBelow++;cout << "Average is " << average << endl;cout << "Number of scores above or equal to the average " << numOfAbove << endl; cout << "Number of scores below the average " << numOfBelow << endl;return 0;}Exercise6_6#include <iostream>#include <cmath>using namespace std;int main(){const int NUM_OF_PRIMES = 50;// Store prime numbersint primeNumbers[NUM_OF_PRIMES];int count = 0; // Count the number of prime numbersint number = 2; // A number to be tested for primenessbool isPrime = true; // Is the current number prime?cout << "The first 50 prime numbers are \n";// Repeatedly find prime numberswhile (count < NUM_OF_PRIMES){// Assume the number is primeisPrime = true;// Test if number is primefor (int i = 0; i < count && primeNumbers[i] <= sqrt(1.0 * number); i++) {//If true, the number is not primeif (number % primeNumbers[i] == 0){// Set isPrime to false, if the number is not primeisPrime = false;break; // Exit the for loop}}// Print the prime number and increase the countif (isPrime){primeNumbers[count] = number;count++; // Increase the countif (count % 10 == 0){// Print the number and advance to the new linecout << number << endl;}elsecout << number << "\t";}// Check if the next number is primenumber++;}return 0;}Exercise6_8#include <iostream>#include <cmath>using namespace std;int average(int array[], int size) {int sum = 0;for (int i = 0; i < size; i++)sum += array[i];return sum / size;}double average(double array[], int size) { double sum = 0;for (int i = 0; i < size; i++)sum += array[i];return sum / size;}int main(){int list1[] = {1, 2, 3, 4, 5, 6};double list2[] = {5.0, 4.4, 1.9, 2.9, 3.4, 3.5};cout << average(list1, 6) << endl;cout << average(list2, 6) << endl;return 0;}Exercise6_10#include <iostream>#include <cmath>using namespace std;int minIndex(int list[], int size){int min = list[0];int minIndex = 0;for (int i = 1; i < size; i++)if (min > list[i]){min = list[i];minIndex = i;}return minIndex;}int main(){int list[] ={1, 2, 4, 5, 10, 100, 2, -22};cout << "The index of the min is " << minIndex(list, 8) << endl;return 0;}Exercise6_12#include <iostream>using namespace std;void reverse(int list[], int size){for (int i = 0, j = size - 1; i < size / 2; i++, j--){int temp = list[i];list[i] = list[j];list[j] = temp;}}int main(){int myList[] ={1, 2, 3, 4, 5, 6, 7, 8};reverse(myList, 8);for (int i = 0; i < 8; i++)cout << myList[i] << " ";return 0;}Exercise6_14#include <iostream>#include "LinearSearch.h"#include "BinarySearch.h"#include "SelectionSort.h"using namespace std;int main(){int list[100000];for (int i = 0; i < 100000; i++){list[i] = rand();}int key = rand();long startTime = time(0);cout << linearSearch(list, key, 100000) << endl;long endTime = time(0);cout << "End time: " << endTime << endl;cout << "Start time: " << startTime << endl;long executionTime = endTime - startTime;cout << "Execution time for linear search is " << executionTime << endl; selectionSort(list, 100000);startTime = time(0);cout << binarySearch(list, key, 100000) << endl;endTime = time(0);executionTime = endTime - startTime;cout << "Execution time for binary search is " << executionTime << endl;return 0;}Exercise6_16#include <iostream>#include "LinearSearch.h"#include "BinarySearch.h"#include "SelectionSort.h"using namespace std;/** The method for printing numbers */void printList(double list[], int size){for (int i = 0; i < size; i++)cout << list[i] << " ";cout << endl;}void bubbleSort(double list[], int size) {bool changed = true;do{changed = false;for (int j = 0; j < size - 1; j++)if (list[j] > list[j + 1]){//swap list[j] wiht list[j+1]double temp = list[j];list[j] = list[j + 1];list[j + 1] = temp;changed = true;}}while (changed);}int main(){// Initialize the listdouble myList[] ={5.0, 4.4, 1.9, 2.9, 3.4, 3.5};// Print the original listcout << "My list before sort is: "; printList(myList, 6);// Sort the listbubbleSort(myList, 6);// Print the sorted listcout << "\nMy list after sort is: " << endl; printList(myList, 6);return 0;}Exercise6_18#include <iostream>using namespace std;int main(){int m[4] [4] ={{1, 2, 4, 5},{6, 7, 8, 9},{10, 11, 12, 13},{14, 15, 16, 17}};int sum = 0;for (int i = 0; i < 4; i++)sum += m[i] [i];cout << "Sum of diagonal is " << sum << endl;return 0;}Exercise6_20#include <iostream>using namespace std;/** The method for sorting the numbers */void sortAndKeepIndex(int list[], int indexList[], int size) { int currentMax;int currentMaxIndex;// Initialize indexListfor (int i = 0; i < size; i++)indexList[i] = i;for (int i = size - 1; i >= 1; i--) {// Find the maximum in the list[0..i]currentMax = list[i];currentMaxIndex = i;for (int j = i - 1; j >= 0; j--) {if (currentMax < list[j]) {currentMax = list[j];currentMaxIndex = j;}}// Swap list[i] with list[currentMaxIndex] if necessary;if (currentMaxIndex != i) {list[currentMaxIndex] = list[i];list[i] = currentMax;// Swap the index in indexList tooint temp = indexList[i];indexList[i] = indexList[currentMaxIndex];indexList[currentMaxIndex] = temp;}}}int main(){const int NUMBER_OF_WORKERS = 8;double workHours[NUMBER_OF_WORKERS][7] = {{2, 4, 3, 4, 5, 8, 8},{7, 3, 4, 3, 3, 4, 4},{3, 3, 4, 3, 3, 2, 2},{9, 3, 4, 7, 3, 4, 1},{3, 5, 4, 3, 6, 3, 8},{3, 4, 4, 6, 3, 4, 4},{3, 7, 4, 8, 3, 8, 4},{6, 3, 5, 9, 2, 7, 9}};// Create an array to store total weekly hoursint weeklyHours[NUMBER_OF_WORKERS] = {0, 0, 0, 0, 0, 0, 0, 0};for (int i = 0; i < NUMBER_OF_WORKERS; i++)for (int j = 0; j < 7; j++)weeklyHours[i] += workHours[i][j];int indexList[NUMBER_OF_WORKERS];// Sort weeklyHourssortAndKeepIndex(weeklyHours, indexList, NUMBER_OF_WORKERS);// Display resultfor (int i = NUMBER_OF_WORKERS - 1; i >= 0; i--)cout << "Employee " << indexList[i] << ": " <<weeklyHours[i] << endl;return 0;}Exercise6_22#include <iostream>using namespace std;const int COLUMN_SIZE = 5;/** The method for multiplying two matrices */void multiplyMatrix(int a[] [COLUMN_SIZE], int b[] [COLUMN_SIZE], int result[] [COLUMN_SIZE], int rowSize){for (int i = 0; i < COLUMN_SIZE; i++)for (int j = 0; j < COLUMN_SIZE; j++)for (int k = 0; k < COLUMN_SIZE; k++)result[i] [j] += a[i] [k] * b[k] [j];}/** Print result */void printResult(int m1[] [COLUMN_SIZE], int m2[] [COLUMN_SIZE], int m3[] [COLUMN_SIZE], char op, int rowSize){for (int i = 0; i < rowSize; i++){for (int j = 0; j < COLUMN_SIZE; j++)cout << " " << m1[i] [j];if (i == COLUMN_SIZE / 2)cout << " " << op << " ";elsecout << " ";for (int j = 0; j < COLUMN_SIZE; j++)cout << " " << m2[i] [j];if (i == COLUMN_SIZE / 2)cout << " = ";elsecout << " ";for (int j = 0; j < COLUMN_SIZE; j++)cout << " " << m3[i] [j];cout << endl;}}int main(){// Create two matrices as two dimensional arraysint matrix1[5] [5];int matrix2[5] [5];int result[5] [5];// Assign random values to matrix1 and matrix2for (int i = 0; i < 5; i++)for (int j = 0; j < 5; j++){matrix1[i] [j] = rand();matrix2[i] [j] = rand();}multiplyMatrix(matrix1, matrix2, result, 5);cout << "The multiplication of the matrices is " << endl; printResult(matrix1, matrix2, result, '*', 5);}Exercise6_24#include <iostream>using namespace std;int main(){int board[8] [8];for (int i = 0; i < 8; i++){for (int j = 0; j < 8; j++){board[i] [j] = rand() % 2;cout << board[i] [j];}cout << endl;}// Check rowsfor (int i = 0; i < 8; i++){bool same = true;for (int j = 1; j < 8; j++){if (board[i] [0] != board[i] [j]){same = false; break;}}if (same) cout << "All " << board[i] [0] << "'s on row " << i << endl;}// Check columnsfor (int j = 0; j < 8; j++){bool same = true;for (int i = 1; i < 8; i++){if (board[0] [j] != board[i] [j]){same = false; break;}}if (same) cout << "All " << board[0] [j] << "'s on column " << j << endl; }// Check major diagonalbool same = true;for (int i = 1; i < 8; i++){if (board[0] [0] == board[i] [i]){same = false; break;}}if (same) cout << "All " << board[0] [0] << "'s on major diagonal" << endl;// Check subdiagonalsame = true;for (int i = 1; i < 8; i++){if (board[0] [7] == board[i] [7 - i]){same = false; break;}}if (same) cout << "All " << board[0] [0] << "'s on subdiagonal" << endl;return 0;}Exercise6_26#include <iostream>#include <cmath>using namespace std;int lcm(int number1, int number2);int pow(int a, int b);int getPrimeFactors(int number, int table[][2]);int main(){// Enter two integersint number1;cout << "Enter the first integer: ";cin >> number1;int number2;cout << "Enter the second integer: ";cin >> number2;cout << "The LCM for " << number1 << " and " << number2 << " is " << lcm(number1, number2) << endl;}int lcm(int number1, int number2){int table1[100][2];for (int i = 0; i < 100; i++)for (int j = 0; j < 2; j++)table1[i][j] = 0;int i1 = getPrimeFactors(number1, table1);int table2[100][2];for (int i = 0; i < 100; i++)for (int j = 0; j < 2; j++)table2[i][j] = 0;int i2 = getPrimeFactors(number2, table2);int result = 1;int i = 0;int j = 0;while (i < i1 && j < i2){if (table1[i] [0] < table2[j] [0]){result *= pow(table1[i] [0], table1[i] [1]);i++;}else if (table1[i] [0] == table2[j] [0]){result *= pow(table1[i] [0], max(table1[i] [1], table2[j] [1]));i++;j++;}else{result *= pow(table2[j] [0], table2[j] [1]);j++;}}while (i < i1){result *= pow(table1[i] [0], table1[i] [1]);i++;}while (j < i2){result *= pow(table2[j] [0], table2[j] [1]);j++;}return result;}int pow(int a, int b){int result = 1;for (int i = 1; i <= b; i++)result *= a;return result;}int getPrimeFactors(int number, int table[][2]) {int i = 0;int factor = 2;while (factor <= number){if (number % factor == 0){table[i] [0] = factor;while (number % factor == 0){number = number / factor;table[i] [1] ++;}i++;}else{factor++;}}return i;}。