Вождь племени поручил своему шаману разработать двоичный код и перевести в него всю важную информацию. двоичный код какой разрядности потребуется для этой цели,если алфавит племени содержит 16 символов. написать все комбинации. !
#include <iostream.h>//для vs <iostream> #include <conio.h> /* для vs : using std::cin; using std::cout; using std::endl; using std::srand; using std::rand;*/ int main(){ int a[16],i,n; randomize();//<->srand; cout<<"EXIT-0\n"; while(n!=0 ){ M: cout<<"Vvedite Razmer Massiva (N<=16) :\n"; cin>>n; if(n>16) cout<<"Error! N>16 . Try again\n"; if(n>16) goto M; for (i=0;i<n;i++) a[i]=random(100);//<->rand(); cout<<endl; for (i=0;i<n;i++) cout<<a[i]<<" "; cout<<endl;} getch(); return 0; }
Напишу ответ, потому что: 1) Все же С++ изучают реже, чем Паскаль 2) Чтобы в очередной раз показать преимущества Паскаля над С-подобными языками для школьных задач. Как говорится, "Имеющий глаза - да увидит!"
// PascalABC.NET 3.3, сборка 1555 от 21.10.2017 // Внимание! Если программа не работает, обновите версию!
begin var n:=ReadInteger('N='); for var i:=1 to n do begin var (flag,j,r):=(True,2,Round(Sqrt(i))); while flag and (j<=r) do if i mod j = 0 then flag:=false else j+=1; if flag then Print(i) end end.
#include <conio.h>
/* для vs :
using std::cin;
using std::cout;
using std::endl;
using std::srand;
using std::rand;*/
int main(){
int a[16],i,n;
randomize();//<->srand;
cout<<"EXIT-0\n";
while(n!=0 ){
M: cout<<"Vvedite Razmer Massiva (N<=16) :\n";
cin>>n;
if(n>16) cout<<"Error! N>16 . Try again\n";
if(n>16) goto M;
for (i=0;i<n;i++)
a[i]=random(100);//<->rand();
cout<<endl;
for (i=0;i<n;i++)
cout<<a[i]<<" ";
cout<<endl;}
getch();
return 0;
}
1) Все же С++ изучают реже, чем Паскаль
2) Чтобы в очередной раз показать преимущества Паскаля над С-подобными языками для школьных задач.
Как говорится, "Имеющий глаза - да увидит!"
// PascalABC.NET 3.3, сборка 1555 от 21.10.2017
// Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('N=');
for var i:=1 to n do begin
var (flag,j,r):=(True,2,Round(Sqrt(i)));
while flag and (j<=r) do
if i mod j = 0 then flag:=false
else j+=1;
if flag then Print(i)
end
end.
Пример
N= 150
1 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149