Летняя практика по программированию. - Форум
Суббота, 03.12.2016, 22:44
Задачи по информатике
Главная | Регистрация | Вход Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: ignorer, KOT_B_MEIIIKE, PASCAL26, atvrider 
Форум » Решение задач по информатике » Задачи по программированию + блок-схемы » Летняя практика по программированию. (Срочно нужно решить 5 задач на Паскале.Помогите, пожалуйста)
Летняя практика по программированию.
МилокДата: Суббота, 26.06.2010, 16:22 | Сообщение # 1
Рядовой
Группа: Новичок
Сообщений: 3
[ 0 ]
Статус: Offline
1. Дано натуральное число n. Получить в порядке возрастания n первых натуральных чисел, которые не делятся ни на какие простые числа, кроме 2, 3 и 5.

2. Дано натуральное число р. Получить последовательность а0, …, аn, каждый член которой равен -1, 0 или 1, такую что р= аn*3n+…+ а1*3+ а0 (а не равен 0). wacko

3. Окружность на плоскости может быть задана координатами x, y ее центра и радиусом r. Пусть даны соответствующие характеристики нескольких окружностей: x1, y1, r1, x2, y2, r2,…, xn, yn, rn.
а) Определить, имеются ли среди этих окружностей три параллельно пересекающиеся .
б) Найти среди этих окружностей все уединенные окружности, т.е. такие, которые не имеют общих точек ни с одной из остальных окружностей, не лежат целиком внутри и не заключают внутри себя какой-либо из остальных окружностей.

Даны натуральное число п, символы s1 ...,sn.. Группы символов, разделенные пробелами (одним или несколькими) и не содержащие пробелов внутри себя, будем называть словами.
а) Подсчитать количество слов в данной последовательности.
б) Подсчитать количество букв а в последнем слове данной последовательности.
в) Найти количество слов, начинающихся с буквы б.
г) Найти количество слов, у которых первый и последний символы совпадают между собой.
д) Найти какое-нибудь слово, начинающееся с буквы а.
е) Преобразовать данную последовательность, заменяя всякое вхождение слова это на слово то.
ж) Найти длину самого короткого слова.

5. Дано натуральные число п. Можно ли представить его в виде суммы трех квадратов на-туральных чисел? Если можно, то:
а) указать тройку х, у, z таких натуральных чисел, что n=x2+y2+z2.
6) указать все тройки х, у, z таких натуральных чисел, n=x2+y2+z2..

Добавлено (26.06.2010, 16:22)
---------------------------------------------
Помогите, пж.ЭТи же задачи нужно решить не только на Паскале, но и на С. А времени совсем в обрез осталось. Пж. cry

 
ignorerДата: Суббота, 26.06.2010, 19:36 | Сообщение # 2
Генералиссимус
Группа: Модераторы
Сообщений: 602
[ 18 ]
Статус: Offline
я не знаю, как решать. задачи слишком сложны для меня sad
 
МилокДата: Воскресенье, 27.06.2010, 13:00 | Сообщение # 3
Рядовой
Группа: Новичок
Сообщений: 3
[ 0 ]
Статус: Offline
Ну неужели нет здесь никого, кто бы мог мне помочь.........
 
WinGeekДата: Воскресенье, 18.07.2010, 21:49 | Сообщение # 4
Лейтенант
Группа: Заблокированные
Сообщений: 13
[ 1 ]
Статус: Offline
вторая вообще простая smile

Code
var
   p,n,i:integer;
begin
   writeln('ââåäèòå p');
   readln(p);
   if p mod 3 = 0 then
     begin
       writeln('n=',p div 3);
       write(p,'=',p div 3,'*3');
       for i:=p div 3 -1 downto 1 do write('+0*3*',i);
     end;
      
   if p mod 3 = 1 then
     begin
       writeln('n=',p div 3);
       write(p,'=',p div 3,'*3');
       for i:=p div 3 -1 downto 2 do write('+0*3*',i);
       writeln('+1');
     end;
    
   if p mod 3 = 2 then  
     begin
       writeln('n=',p div 3+1);
       write(p,'=',p div 3+1,'*3');
       for i:=p div 3 -1 downto 2 do write('+0*3*',i);
       writeln('-1');
     end;
end.

Добавлено (18.07.2010, 21:46)
---------------------------------------------
пятая:

Code

var
   p,x,y,z: integer;
   c:boolean;
begin
   writeln('vvedite p');
   readln(p);
   c:=true;
   for x:=1 to round(sqrt(p)) do
     for y:=1 to x do
       for z:=1 to y do
         if sqr(z)+sqr(y)+sqr(x)=p then
           begin
             writeln(p,'=',x,'^2+',y,'^2+',z,'^2');
             c:=false;
           end;
   if c then writeln('chislo nelzya razlozhit'' na kvadrati');
end.

в случае если надо вообще любые тройки, а не неповторяющиеся, то:

Code

var
   p,x,y,z: integer;
   c:boolean;
begin
   writeln('vvedite p');
   readln(p);
   c:=true;
   for x:=1 to round(sqrt(p)) do
     for y:=1 to round(sqrt(p))  do
       for z:=1 to round(sqrt(p))  do
         if sqr(z)+sqr(y)+sqr(x)=p then
           begin
             writeln(p,'=',x,'^2+',y,'^2+',z,'^2');
             c:=false;
           end;
   if c then writeln('chislo nelzya razlozhit'' na kvadrati');
end.

Добавлено (18.07.2010, 21:49)
---------------------------------------------
ну и первая:

var
n,c:integer;
i:longint;

function test(t2:longint):boolean; {повека числа на условие задачи}
var
t,i:longint;
c:boolean;
begin
c:=false;test:=false;
t:=t2;
while t mod 2 = 0 do begin t:=t div 2; c:=true; end;
while t mod 3 = 0 do begin t:=t div 3; c:=true; end;
while t mod 5 = 0 do begin t:=t div 5; c:=true; end;

if t=1 then begin
test:=true;
exit; {число делится вообще только на 2,3,5}
end;
if c then exit; {если чсило pазделилось на 2,3 или 5 и что-то ещё осталось,
значит оно делится на какое-то ещё пpостое число кpоме них}
{пpовеpка, делится ли число вооще на что-нибудь кpоме 2,3,5}
for i:=7 to round(sqrt(t2)+1) do
if t2 mod i = 0 then exit;
test:=true;
end;

begin
writeln('введите n');
readln(n);
i:=1;
writeln(test(121));
while c<n do
begin
if test(i) then
begin
writeln(i);
c:=c+1;
end;
i:=i+1;
end;
end.

Сообщение отредактировал WinGeek - Воскресенье, 18.07.2010, 21:33
 
МилокДата: Понедельник, 19.07.2010, 23:53 | Сообщение # 5
Рядовой
Группа: Новичок
Сообщений: 3
[ 0 ]
Статус: Offline
tongue спс tongue
 
Форум » Решение задач по информатике » Задачи по программированию + блок-схемы » Летняя практика по программированию. (Срочно нужно решить 5 задач на Паскале.Помогите, пожалуйста)
Страница 1 из 11
Поиск:

Copyright MyCorp © 2016