#include <cstdlib>
#include <iostream>
using namespace std
char f[101][101][11]
int k
int linju(int i,int j)
{
int p=0
if(f[i-1][j][k-1]=='@')p++
if(f[i+1][j][k-1]=='@')p++
if(f[i][j+1][k-1]=='@')p++
if(f[i][j-1][k-1]=='@')p++
if(f[i+1][j+1][k-1]=='@')p++
if(f[i-1][j+1][k-1]=='@')p++
if(f[i-1][j-1][k-1]=='@')p++
if(f[i+1][j-1][k-1]=='@')p++
return p
}
int main(int argc, char *argv[])
{
int n,m
int i,j
int x
cout<<"输入横竖列个数"<<endl
cin>>n>>m
cout<<"输入各数据"<<endl
for(i=1i<=ni++)
for(j=1j<=mj++)
cin>>f[i][j][0]
cout<<"输入改变天数"<<endl
cin>>x
int temp
for(k=1k<=xk++)
{
for(i=1i<=ni++)
for(j=1j<=mj++)
{
temp=0
f[i][j][k]=f[i][j][k-1]
if(f[i][j][k-1]=='@')
{
temp=linju(i,j)
if(temp>=4||temp<=1)
f[i][j][k]='+'
}
if(f[i][j][k-1]=='+')
{
temp=linju(i,j)
if(temp==3)
f[i][j][k]='@'
}
}
for(i=1i<=ni++,cout<<endl)
for(j=1j<=mj++)
{
cout<<f[i][j][k]<<" "
}
cout<<endl
}
system("PAUSE")
return EXIT_SUCCESS
}
首先,与医学上的“病毒”不同,计算机病毒不是天然存在的,是某些人利用计算机软、硬件的脆弱性,编制具有特殊功能的程序。计算机病毒是一个程序,一段可执行码。就像生物病毒一样,计算机病毒有独特的复制能力。计算机病毒可以很快地蔓
延,又常常难以根除。它们能把自身附着在各种类型的文件上。当文件被复制或从一个用户传送到另一个用户时,它们就随
同文件一起蔓延开来。
除复制能力外,某些计算机病毒还有其它一些共同特性:一个被污染的程序能够传送病毒载体。当你看到病毒载体似乎
仅仅表现在文字和图象上时,它们可能也已毁坏了文件、再格式化了你的硬盘驱动或引发了其它类型的灾害。若是病毒并不
寄生于一个污染程序,它仍然能通过占据存贮空间给你带来麻烦,并降低你的计算机的全部性能。
可以从不同角度给出计算机病毒的定义。一种定义是通过磁盘、磁带和网络等作为媒介传播扩散,能“传染” 其他程序
的程序。另一种是能够实现自身复制且借助一定的载体存在的具有潜伏性、传染性和破坏性的程序。还有的定义是一种人为
制造的程序,它通过不同的途径潜伏或寄生在存储媒体(如磁盘、内存)或程序里。当某种条件或时机成熟时,它会自生复制
并传播,使计算机的资源受到不同程序的破坏等等。这些说法在某种意义上借用了生物学病毒的概念,计算机病毒同生物病毒
所相似之处是能够侵入计算机系统和网络,危害正常工作的“病原体”。它能够对计算机系统进行各种破坏,同时能够自我复
制, 具有传染性。
所以, 计算机病毒就是能够通过某种途径潜伏在计算机存储介质(或程序)里, 当达到某种条件时即被激活的具有对计
算机资源进行破坏作用的一组程序或指令集合
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)