Var a,b,c:array[1..9] of Longint;
i,k:longint;
begin
for i:=1 to 9 do
begin
read(a[i]);
end;
for i:=1 to 9 do
begin
read(b[i]);
end;
for i:=1 to 9 do
begin
c[i]:=a[i]+b[i];
write(c[i],' ');
end;
<span>end.</span>
Язык не указан, Default-Language это C. На нём и напишу.
1.
#include <stdio.h>
int main() {
int n;
scanf("%d", &n);
if (n % 10 == 4 || n % 10 == 7 || n / 10 == 4 || n / 10 == 7)
printf("YES\n");
else
printf("NO\n");
return 0;
}
Для порядку скажу что на Perl это можно реализовать проще.
#!perl
%h { 4 => 0, 7 => 0};
<>;
if (exists $h{$_%10} || exists $h{$_/10}) {
print "YES\n";
else {
print "NO\n";
}
Но мы ушли от темы. Итак, 2. Тут всё ещё проще:
#include <stdio.h>
int main() {
int n;
scanf("%d", &n);
if (!(n % 3))
printf("Multiple of 3\n");
else
printf("Not multiple of 3\n");
if (n % 10 == 3)
printf("Ends by 3\n");
else
printf("Not ends by 3\n");
return 0;
}
Тут более простой реализации на другом известном мне языке нету, так что приводить дополнительно ничего не буду.
#include <iostream>
<span>#include <ctime>
</span><span>using namespace std;
</span>int main() {
<span> int n,m;
</span><span> FILE *fpt;
</span><span> cout<<"n = "; cin>>n;
</span><span> fpt=fopen("input.dat","wb");
</span><span> srand(time(NULL));
</span><span>// запись файла
</span><span> for (int i=0; i<n; i++) {
</span><span> m=rand()%8000-3000;
</span><span> cout<<m<<" ";
</span><span> fwrite(&m,sizeof(int),1,fpt);
</span><span> }
</span><span> cout<<endl;
</span><span> fclose(fpt);
</span><span> fpt=fopen("input.dat","rb+");
</span><span> int indf=0,indl=0,vf=0,vl=0,k=0;
</span><span>// чтение файла
</span><span> while (fread(&m,sizeof(int),1,fpt)!=0) {
</span><span> k++;
</span><span> if (!(m%2==0) && (indf==0)) { indf=k-1; vf=m; }
</span><span> if ((!m==0) && (m%2==0)) { indl=k-1; vl=m; }
</span><span> }
</span><span> cout<<"first odd = "<<vf<<" index = "<<indf<<endl;
</span><span> cout<<"last even = "<<vl<<" index = "<<indl<<endl;
</span><span>// обмен первого нечетного и последнего четного
</span><span> if (indf>0) {
</span><span> fseek(fpt,sizeof(int)*indf,SEEK_SET);
</span><span> fwrite(&vl,sizeof(int),1,fpt);
</span><span> }
</span><span> if (indl>0) {
</span><span> fseek(fpt,sizeof(int)*indl,SEEK_SET);
</span><span> fwrite(&vf,sizeof(int),1,fpt);
</span><span> }
</span><span> fclose(fpt);
</span><span> system("pause");
</span><span> return 0;
</span><span>}
</span>n = 6
<span>4368 2733 1112 2620 1941 753
</span><span>first odd = 2733 index = 1
</span><span>last even = 2620 index = 3
</span>
Если под "кб" подразумевались килоБИТы, то 3500*1024/16/3200 = 70 секунд. Если – килоБАЙТы, то 3500*1024*8/16/3200 = 560 секунд.
//Ответ: 133.
//PascalABC.NET
var
i: integer;
begin
i := 0;
while(true) do
begin
if((i mod 7 = 0) and (i mod 3 <> 0) and (i mod 10 = 3)) then break;
i := i + 1;
end;
write(i);
<span>end.</span>