Вход

Просмотр полной версии : Студентам с лабораторными сюда


Страницы : 1 2 3 4 5 6 7 8 9 10 [11] 12

DimkO
18.03.2010, 08:34
начал осваивать Visual Basic и появился такой вопрос. Почему после изменения размеров кнопки при загрузке формы при каждом выполнении программы форма меняет свои координаты расположения на экране?выстраивая их как будто каскадом.
код состоит всего из 3-х строк:
Private Sub Form_Load()
Randomize
Command1.Height = 2625 * Rnd
Command1.Width = 3360 * Rnd
End Sub

s0l_ir0n
18.03.2010, 09:48
начал осваивать Visual Basic и появился такой вопрос. Почему после изменения размеров кнопки при загрузке формы при каждом выполнении программы форма меняет свои координаты расположения на экране?выстраивая их как будто каскадом.
код состоит всего из 3-х строк:
Private Sub Form_Load()
Randomize
Command1.Height = 2625 * Rnd
Command1.Width = 3360 * Rnd
End Sub

Функция Rnd возвращает значение, которое меньше 1, но больше или равно нулю.

Cпособ генерации случайного числа в функции Rnd определяется значением параметра Number.
Вот тебе и каскад...

EndLeSSDre@M
18.03.2010, 11:02
так потому что у тебя форма строится методом рандома!!! Rnd - функция генерации случайных чисел!

R1k94
18.03.2010, 14:42
Помогите пожалуйста решить задачку. Pascal
http://xmages.net/upload/a3470657.jpg

Delimiter
18.03.2010, 14:58
при данных условиях задача не имеет единственного решения! Маленькие кружки с радиусом R3 могут свободно перемещаться обеспечивая касание как с большой R1 так и с малой R2 окружностями при R1=R2+R3 .... при этом площадь будет меняться!

при R1<R2+R3 можно решить но нужны координаты центров R3

при R1>R2+R3 НЕТ РЕШЕНИЙ

Уточни задачу!

St0nX
18.03.2010, 14:59
pi := 3.14;
S := pi(( (sqr(r1)+sqr(r2))/2) - sqr(r3));
Это если предположить что окружности находяться на одной линии.

R1k94
18.03.2010, 15:08
Уточни задачу!

задача такая как и есть, это весь ее текст

DimkO
18.03.2010, 15:28
так потому что у тебя форма строится методом рандома!!! Rnd - функция генерации случайных чисел!
но я же использую рандом для задания координат кнопки а не формы,почему оно на форму влияет не пойму...=\

Irdis
18.03.2010, 15:28
Delimiter погорячился
т.к. 2*r3+r2=r1

EndLeSSDre@M
18.03.2010, 15:57
так как r2-r1=2*r3 то из этого следует что центры лежат на одной прямой, если бы было не так тогда окружности не могли бы пересекаться...
значит площадь будет вычисляться по формуле:

s=pi*(r1^2/2+r2^2/2-r3^2)

R1k94
18.03.2010, 16:07
А как саму прогу записать? Имею ввиду
program
var
...

EndLeSSDre@M
18.03.2010, 16:15
что то типа такого:

program qasdf;
const
pi:=3.14;
r1:=25;
r2:=15;
r3:=5;
var
s:integer;
begin
s:=pi*(sqr(r1)/2+sqr(r2)/2-sqr(r3));
writeln(s);
readln;
end.

хотя лучше без ввода вручную... иначе придется проверять на соприкосновение окружностей

R1k94
18.03.2010, 16:36
Спасибо всем парни! вроде что - то вышло)

BELbIY
18.03.2010, 16:54
program sq;
var r1,r2,r3:real;

function square(r1,r2,r3:real):real;
begin
square:=pi*((r1*r1)/2+(r2*r2)-(r3*r3)*2);
end;

begin
write('radius 1 ');
readln(r1);
write('radius 2 ');
readln(r2);
write('radius 3 ');
read(r3);

write('square is ',square(r1,r2,r3):1:2);
end.

R1k94
18.03.2010, 16:56
BELbIY
Спасибо огромное! все получилось!

Soherox
18.03.2010, 17:01
EndLeSSDre@M...в Паскале и так есть встроенная константа pi, так что это писать не обязательно =)
const
pi:=3.14;

EndLeSSDre@M
18.03.2010, 17:03
EndLeSSDre@M...в Паскале и так есть встроенная константа pi, так что это писать не обязательно =)


))) та я по паскалю не специализируюсь))) просто некий синтаксис знаю...))) но спасибо))) впредь буду знать)

Irdis
18.03.2010, 20:50
так как r2-r1=2*r3 то из этого следует что центры лежат на одной прямой, если бы было не так тогда окружности не могли бы пересекаться...
нет никак это не следует...

[underwater]
18.03.2010, 22:30
Ввести строку символов. Вывести сумму цифр в строке, если они там есть.
На ASMе. Помогите пожалуйста.

banan5555
19.03.2010, 09:47
Задача 1
Дан массив целых чисел состоящий из 100000 чисел. Написать многопоточное приложение которое на 10 процессах вычислит: Сумму отрицательных элементов массива.

Задача 2
Написать многопоточное приложение которое на 10 процессах реализует задачу:
Дана матрица размера M × N. Найти количество ее столбцов, элементы которых упорядочены по убыванию.
М=100000
N=50000

Язык С++ с MPI.

Life7
19.03.2010, 17:55
Помогите, пожалуйста. То ли я торможу, то ли лыжи не едут.
Задание: Инициализировать массив, который содержит целые числа. Переписать парные и непарные числа в разные массивы. Оформить это действие в виде процедуры с формальными параметрами. - В делфи

Вот то что я наваяла, подскажите, пожалуйста, ошибку:

program Project1;

{$APPTYPE CONSOLE}

uses
SysUtils;
type Mas=array [1..10] of integer;
Mas1=array [1..10] of integer;
Mas2=array [1..10] of integer;
procedure Proc(i:integer; M:Mas; M1:Mas; M2:Mas2);
begin
for i:=1 to 10 do
if M[i] mod 2 =0 then M[i]:=M1[i]
else M[i]:=M2[i];
end;

var M:Mas; M1:Mas; M2:Mas2; i:integer;

begin
M[1]:=2;
M[2]:=6;
M[3]:=9;
M[4]:=11;
M[5]:=17;
M[6]:=10;
M[7]:=19;
M[8]:=23;
M[9]:=13;
M[10]:=1;
proc ( i, M, M1, M2);

for i:=1 to 10 do
Write (M1[i]);

for i:=1 to 10 do
Writeln(M2[i]);



readln;
end.

EndLeSSDre@M
19.03.2010, 18:04
Переписать парные и непарные числа в разные массивы.

че то я не догнал... в условии парные.... а в программе ищешь четные и не четные.... по подробнее плиз

ну и если разбираться в самом коде то:

if M[i] mod 2 =0 then M[i]:=M1[i]
else M[i]:=M2[i];

скорее всего нужно изменить так:

if M[i] mod 2 =0 then M1[i]:=M[i]
else M2[i]:=M[i];

и еще по поводу этого... если при i=1 будет четное число, то например записываем его в M1 дальше при i=2 нечетное число то его записываем в M2 и получается что он будет под 2 номером! а под первым будет 0.....это как бэ тоже не гуд!

лучше измени на это:

k=1;
l=1;
for i:=1 to 10 do
if M[i] mod 2 =0 then M1[k]:=M[i] and k=k+1
else M2[l]:=M[i] and l=l+1;
end;




for i:=1 to 10 do
Write (M1[i]);

for i:=1 to 10 do
Writeln(M2[i]);

тогда уж везде пиши Writeln для перехода на новую строку... или Write чтоб подряд писались

и после проделанного получаем код:

program Project1;

{$APPTYPE CONSOLE}

uses
SysUtils;
type Mas=array [1..10] of integer;
Mas1=array [1..10] of integer;
Mas2=array [1..10] of integer;
procedure Proc(i:integer; M:Mas; M1:Mas; M2:Mas2);
begin
k=1;
l=1;
for i:=1 to 10 do
if M[i] mod 2 =0 then M1[k]:=M[i] and k=k+1
else M2[l]:=M[i] and l=l+1;
end;

var M:Mas; M1:Mas; M2:Mas2; i:integer;

begin
M[1]:=2;
M[2]:=6;
M[3]:=9;
M[4]:=11;
M[5]:=17;
M[6]:=10;
M[7]:=19;
M[8]:=23;
M[9]:=13;
M[10]:=1;
proc ( i, M, M1, M2,k,l);

for i:=1 to k do
Writeln (M1[i]);

for i:=1 to l do
Writeln(M2[i]);

readln;
end.

не помню как на дельфи делать в условии добавления делать... типа if тото то k=1 и l=1 елсе... поправьте меня если что
Надеюсь правильно))) привет Soherox :rolleyes:

Soherox
19.03.2010, 18:36
EndLeSSDre@M
Переписать парные и непарные числа в разные массивы.


че то я не догнал... в условии парные.... а в программе ищешь четные и не четные.... по подробнее плиз


Я думаю все верно, с украинского парные это четные, если я конечно не ошибаюсь :)


Вот отдебаженный и исправленный код (P.S. Спасибо EndLeSSDre@M)

{$APPTYPE CONSOLE}
const
n =10;
type
mas=array [1..n] of integer;
var
m, m1, m2: mas;
i, k, l: integer;

procedure Proc(var m, m1, m2: mas);
var
i: integer;
begin
k:=1; l:=1;
for i:=1 to n do
if m[i] mod 2 =0 then
begin
m1[k]:=m[i];
inc(k);
end
else
begin
m2[l]:=m[i];
inc(l);
end;
end;

begin
m[1]:=2;
m[2]:=6;
m[3]:=9;
m[4]:=11;
m[5]:=17;
m[6]:=10;
m[7]:=19;
m[8]:=23;
m[9]:=13;
m[10]:=1;

proc (m, m1, m2);

for i:=1 to k - 1 do write(m1[i],' ');
writeln;
for i:=1 to l - 1 do write(m2[i],' ');
readln;
end.

Robobit
19.03.2010, 21:59
Здравствуйте!
Пожалуйста помогите выполнить лабораторную работу на любом языке...
Тема:Программирование алгоритмов разветвленной структуры.

http://i077.radikal.ru/1003/0e/2203a19839c4.jpg

http://s43.radikal.ru/i099/1003/50/5ea7c2fa9f34.jpg

fenixelite
19.03.2010, 22:15
Эмм а что тут непонятного?

var
x,y:real;
begin
read(x);
if (x<7)and(x>6) then
y:=5*x+6;
if (x>7)and(x<10) then
y:=2*x
else
y:=9;
writeln(y);
end.

Soherox
19.03.2010, 22:25
по первой картинке

{$APPTYPE CONSOLE}
var
x: real;
begin
write('x = ');
readln(x);
if (x > 6) and (x < 7) then writeln('y = ', 5*x + 6:0:3)
else
if (x > 7) and (x < 10) then writeln('y = ', 2 * x:0:3)
else writeln('y = 9');
readln;
end.

и по второй

{$APPTYPE CONSOLE}

const
va = 0.8;
vb = 1.2;
k1 = 15;
k2 = 0.7;
k3 = 0.01;
v = 0.8;
var
v2, v3: real;
begin
write('v2 = ');
readln(v2);
write('v3 = ');
readln(v3);

if (v < v2) and (v > 0) then writeln('I = ', k1 * v:0:3)
else
if (v > v2) and (v < v3) then writeln('I = ', k1*v2 + k2*sqrt(v):0:3)
else
if (v3 < v) then writeln('I = ', k1*va + k2*sqrt(vb) + v3*k3:0:3);
readln;
end.

Если не накосячил и правильно понял задачки, то так))

EndLeSSDre@M
19.03.2010, 22:30
Блин опять не успел(((
жалко что тут мало интересных задачек просят сделать... так даже не интересно(((

Soherox
19.03.2010, 22:33
EndLeSSDre@M...это точно =)

BrainDeaD
19.03.2010, 22:44
EndLeSSDre@M
c# знаешь?

EndLeSSDre@M
19.03.2010, 22:48
нет :( ну книжка дома лежит... че то никак взяться за нее не могу... начал С++ изучать... а так я больше по basic pascal дельфи... ну и все такое со схожим синтаксисом

Robobit
19.03.2010, 22:59
Большое спасибо что так быстро ответили.

Spider545
19.03.2010, 23:38
Все привет!!!))) Есть кто-нибудь кто разбирается с высшей математикой и работает в среде MatLab ???????? Нужна ваша помощь(((( Плиз отзовитесь)

Dhsus
20.03.2010, 00:10
Доброго времени суток! Помогите пожалуйста сделать лабораторную работу в delphi.. Нужна сделать вот такое окно, http://i062.radikal.ru/1003/f5/ba16c5d08fc3.jpg что бы можна было обчислить Y=23cos2(x13x25)+2x1. ПОЖАЛУЙСТА!!!

Soherox
20.03.2010, 09:15
что бы можна было обчислить Y=23cos2(x13x25)+2x1. ПОЖАЛУЙСТА!!!

Так Y=23cos2(3*x1*5*x2)+2x1 или Y=23cos2(x1*x2)+2x1, я что-то не особо понял

Dhsus
20.03.2010, 09:38
Здесь х1 в степени 3 и х2 в тепени 5...

Guffi
20.03.2010, 12:04
Ceil Округляет значение аргумента в большую сторону.
Exp Вычисляет значение ex.
Floor Округляет значение аргумента в меньшую сторону.
Frac Возвращает дробную часть аргумента.
Frexp Возвращает мантиссу и экспоненту аргумента.
Int Возвращает целую часть аргумента.
IntPower Возводит аргумент X в целочисленную степень Y.
Ldexp Вычисляет X*2Y.
Ln Вычисляет натуральный логарифм ln(x).
LnXP1 Вычисляет натуральный логарифм ln(x+1).
Log10 Вычисляет десятичный логарифм.
Log2 Вычисляет логарифм аргумента по основанию 2.
LogN Вычисляет логарифм аргумента по основанию N.
Max Возвращает большее из двух чисел.
Min Возвращает меньшее из двух чисел.
Pi Возвращает значение числа Пи.
Poly Вычисляет однородный полином.
Power Возводит X в степень Y.
Round Округляет число к ближайшему целому.
Sqr Вычисляет квадрат аргумента Х.
Sqrt Вычисляет квадратный корень аргумента Х.
Trunc Отсекает дробную часть числа.

На будущее.. Дальше сам.

sveta11115
20.03.2010, 14:36
Напишите, если можно программы на С++
1) Заменить в тексте все символы с 'a' на 'z', 'b' на 'y', 'c' на 'x' и так далее.
2) Определить средние арифметические столбцов матрицы

Данные вводятся с клавиатуры

TPAXTOP
20.03.2010, 15:06
помогите, плз...нужно сделать на MathCADе такое:
Вычислить значение суммы, используя операторы цикла с параметром for и с предпосылкой while.

вот само задание (http://upload.com.ua/get/901476814/)

Soherox
20.03.2010, 18:34
Dhsus...держи исходник (http://narod.ru/disk/18941194000/Function%20y.rar.html), вроде все правильно

sveta11115
21.03.2010, 00:25
Спасибо.
А если не одна строка, а несколько строк (то есть массив из строк, то как делать?

Life7
21.03.2010, 00:32
помогите зделать программу
Создание собственной библиотеки
создать библиотеку функций
Список группы (ФИО, возраст, средний балл по предметам)
на СИ

sveta11115
21.03.2010, 00:44
Большое спасибо

Dhsus
21.03.2010, 15:10
Dhsus...держи исходник (http://narod.ru/disk/18941194000/Function%20y.rar.html), вроде все правильно
Большое спасибо!!!!

>>serhio<<
22.03.2010, 19:14
помогите разобрать задачу на си.С виду легкая, но я только начал этот язык изучатьбпоэтому не судите строго.
Задача:
В двумерном массиве выбрать элементы, которые больше суммы элементов главной диагонали массива.

А вот моя наработка:
Код C1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 #include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <math.h>
void main()
{
clrscr();
randomize();
const int n=10;
int i,j,sum=0,S[n][n];
for(i=1;i<=n;i++)

for(j=1;j<=n;j++)
S[i][j]=rand()%100;
printf("[%d] ",S[i,j]);

for(i=1;i<=n;i++)
S[i,i]= (S[i,i] / n*2);
for(i=1;i<=n;i++)
sum=sum+S[i,i];
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)

if(S[i,j] > sum)
printf("Summa elementov bolshe\n);
if(i=j)
printf("Summa rovna\n);
printf("S[i,j]:3\n");
}
printf("sum=",sum);
getch();

EndLeSSDre@M
22.03.2010, 19:53
че то я ваще твою прогу не понял.... может чисто из за того что С++ не знаю))))
че трудного то... находишь сумму элементов с одинаковыми индексами, типа s(1,1) s(2,2) и так до s(n,n). потом в другом цикле сравниваешь их и записываешь либо в строку либо в одномерный массив...

kozak-91
22.03.2010, 20:01
Кто может помочь написать программку на MathCad? Cтучите в асю пожалуста срочно

kozak-91
22.03.2010, 20:02
Кто может помочь написать программку на MathCad, стучите в асю пожалуста срочно
428657553

kozak-91
22.03.2010, 20:11
Кто может сделать программу на MathCad срочно стучите в асю 428657553 ?

TPAXTOP
22.03.2010, 20:41
Кто может сделать программу на MathCad срочно стучите в асю 428657553 ?

я могу, пиши 454684394

STIFFmaster
23.03.2010, 00:47
Программа должна вводить и выводить несколько маршрутов в структуру. Делал вроде бы все как в книге, но получается что не все... Думаю что ошибка в передаче структуры в функцию. Подскажите.

struct StructAVTOVOKZAL
{
char pynkt_priznachennia [20];
float time_otpr; float time_pribitia;
bool SvMest; };
extern "C" void funVvodDan(StructAVTOVOKZAL &avtovokzal);
extern "C" void funVuvodaNaEkr(StructAVTOVOKZAL avtovokzal);

#include <iostream.h>
#include <string.h>
#include "my_lib.h"
void funVvodDan(StructAVTOVOKZAL *avtovokzal[2])
{
for(int i=0; i<2; i++)
{
cout<<"vvedite punkt naznachenia: ";
cin>>avtovokzal[i].pynkt_priznachennia;
cout<<"\n";
cout<<"vvedite vremia otpravki: ";
cin>>avtovokzal[i].time_otpr;
cout<<"\n";
cout<<"vvedite vriemia pribitia: ";
cin>>avtovokzal[i].time_pribitia;
cout<<"\n";
cout<<"ykazhitie nalichie svobodnih mest (TRUE=1/FALSE=0): ";
cin >>avtovokzal[i].SvMest;
}
getch();
cout<<"tepr\' mozhetie prosmotret\' vvedionnoe\n";
cout<<"vvedite '2'";
}
void funVuvodaNaEkr(StructAVTOVOKZAL avtovokzal[2])
{
for(int j=0; j<2; j++)
{
cout<<avtovokzal[j].pynkt_priznachennia;
cout<<"\n";
cout<<avtovokzal[j].time_otpr;
cout<<"\n";
cout<<avtovokzal[j].time_pribitia;
cout <<"\n";
cout<<avtovokzal[j].SvMest;
cout<<"\n";
}
}


#include <iostream.h>
#include <string.h>
#include "my_lib.cpp"
void main()
{
StructAVTOVOKZAL avtovokzal[2];
while(1)
{
cout<<"\n AVTOVOKZAL \n \n";
cout<<"1 VVOD DANNIH \n";
cout<<"2 PROSMOTR DANNIH \n \n";
int choise;
cin>>choise;
switch(choise)
{
case 1 : funVvodDan(avtovokzal[2]);
cout<<"\n"; getch(); break;
case 2 : funVuvodaNaEkr(avtovokzal[2]);
cout<<"\n"; getch(); break;
default : cout<<" vu vveli nevernoe simvol \n";
getch(); break;
}
}
getch();
}

>>serhio<<
23.03.2010, 11:30
Помогите пожалуйста написать прогу на Си!
Дана матрица размера SxS S-четное. Составить программу, которая выполняет обмен между четвертями матрицы. 1-3, 2-4

criptic
23.03.2010, 20:10
(Ссори сразу за оффтоп. ) Кто за $ возьмется писать 2 проги на Си. задания и сумма обговаривается в icq - 563923014

Dhsus
23.03.2010, 22:25
Доброго времени суток. Помогите пожалуйста с лабораторной работой в Delphi. я что-то его не могу понять... Так-как изучал Paskal.. :(
Нужно скласть программу для обчисления
y=tg(x1)+cos(x2) в заданом диапазоне значений сменных х1 и х2 при заданом кроке смены х1 и х2. Программа должна обеспечить ввод необходимых данных с клавиатуры и вывод результата на экран.Кроме того, к результующей таблице необходимо в конец добавить столбчик и строку, в котором соответственно будут содержаться сумма значений в строке или столбике.
http://s52.radikal.ru/i135/1003/32/52698da23e4b.jpg

Вобшем должно получится такое окно

http://s005.radikal.ru/i210/1003/f0/f61c72ba9bb8.jpg

Dhsus
23.03.2010, 22:26
Просьба вказать которие числа били вибрание.

SMD15
24.03.2010, 00:36
Где можно найти код игры "кроссворд", написанной на Delphi? Может кто-нибудь помочь его написать? Нужен самый элементарный, без наворотов.

seowayder
24.03.2010, 02:52
Помогите написать алгоритм сортировки методом естественного двухпутевого слияния на примере алгоритма Д.Э. Кнут на С++.

Вот вырезка из книги Кнута по этой теме (нужно сделать по Алгоритму N):

http://s47.radikal.ru/i117/1003/cf/e45ce780177c.bmp

http://i082.radikal.ru/1003/ef/15bf0076bf38.bmp

Чем быстрее пожалуйста! Заранее благодарен!

fenixelite
24.03.2010, 07:43
SMD15, вот смотри

http://www.delphisources.ru/pages/sources/raznoe/2008-year/crossword-creator.html

TANZWUT
24.03.2010, 18:08
Попросила знакомая помочь с заданием для инста, сказала чем быстрее - тем лучше, завтра утром сдавать, линк на топик дам - сама посмотрит.
Вобщем:
Язык: C++
Задание: Дана строка a-Z,а-Я,0-9 и спецсимволы. надо подсчитать количество цифр в строке. гуй не нужен, хз - можете ещё добавить для сложности вывод сколько всего символов, букв, спецсимволов в строке - думаю будет гуд.

С меня спасибо +.

оlbaneс
24.03.2010, 18:39
танзвут, катастрофически времени сейчас нету. вот тут готовый код посчитать количество букв, слов и предложений в тексте http://www.makak.ru/2008/04/08/kak-poschitat-kolichestvo-bukv-slov-i-predlozhenij-v-tekste-na-c/
надо немного изменить и все будет ок.

Scorpion_007
24.03.2010, 19:06
Ребят помогите написать программу по блок схеме для Си. http://s50.radikal.ru/i127/1003/50/26d2e1fee741.jpg (http://www.radikal.ru)

Заранее спасибо

BrainDeaD
24.03.2010, 20:40
Попросила знакомая помочь с заданием для инста, сказала чем быстрее - тем лучше, завтра утром сдавать, линк на топик дам - сама посмотрит.
Вобщем:
Язык: C++
Задание: Дана строка a-Z,а-Я,0-9 и спецсимволы. надо подсчитать количество цифр в строке. гуй не нужен, хз - можете ещё добавить для сложности вывод сколько всего символов, букв, спецсимволов в строке - думаю будет гуд.

С меня спасибо +.
апдейт: программа выполняет все задания. после ввода строки выдаёт кол-во цифр, заглавных и строчных букв, всех возможных спецсимволов и общее кол-во знаков.


#include "stdafx.h"
#include <conio.h>
#include <iostream>
#include <string>
using namespace std;
using std::string;

int main(int argc, char* argv[])
{
//инициализация поременных
int countnum=0, countchar=0, countletter=0, countspec=0;
string string1;
cout << "please type the string\n";

//зачитываем строку знаков
cin >> string1;

//проходим по каждому знаку в строке
for (int i=0; i<string1.size(); i++)
{
//по ascii коду опредляем цифра ли это
if ((int)string1[i]>47 && (int)string1[i]<58)
{
//если да, увеличиваем кол-во цифер
countnum++;
}

//по ascii коду опредляем буква ли это
if ((int)string1[i]>96 && (int)string1[i]<123 || (int)string1[i]>64 && (int)string1[i]<91 || (int)string1[i]>-127 && (int)string1[i]<-17)
{
//если да, увеличиваем кол-во букв
countletter++;
}

//по ascii коду опредляем символ ли это
if ((int)string1[i]>31 && (int)string1[i]<48 || (int)string1[i]>57 && (int)string1[i]<65 || (int)string1[i]>90 && (int)string1[i]<97 || (int)string1[i]>122 && (int)string1[i]<127)
{
//если да, увеличиваем кол-во символов
countspec++;
}
//считаем все знаки
countchar++;
}

//вывод результатов
cout << "Count numbers: " << countnum << "\nCount characters: " << countchar << "\nCount letters: " << countletter << "\nCount specials: " << countspec;
getch();
return 0;
}

EndLeSSDre@M
24.03.2010, 20:51
Dhsus вот держи свою лабу:

Скачать исходники (http://slil.ru/28847755)

http://s45.radikal.ru/i110/1003/be/d58fdc91f7aa.jpg

оlbaneс
24.03.2010, 21:44
Попросила знакомая помочь с заданием для инста, сказала чем быстрее - тем лучше, завтра утром сдавать, линк на топик дам - сама посмотрит.
Вобщем:
Язык: C++
Задание: Дана строка a-Z,а-Я,0-9 и спецсимволы. надо подсчитать количество цифр в строке. гуй не нужен, хз - можете ещё добавить для сложности вывод сколько всего символов, букв, спецсимволов в строке - думаю будет гуд.

С меня спасибо +.
ATTENTION передал заново
надо подсчитать количество цифр в строке - поставленое условие выполнено. препод пусть в следующий раз точно озвучивает ТЗ.
// tanzwut.cpp: определяет точку входа для консольного приложения.
//

#include "stdafx.h"
#include <iostream>

using namespace std;
int main ()
{
int i,a=0; //объявляем переменные
char s[99]; //длина строки
cin >>s; //яростно стучим по клаве
for (i = 0; s[i] ; i++) //пока не конец строки
{ if (s[i]=='0' || s[i]=='1' || s[i]=='2'|| s[i]=='3'|| s[i]=='4'|| s[i]=='5'|| s[i]=='6'|| s[i]=='7'|| s[i]=='8'|| s[i]=='9')
{ //проверяем а вдруг число очень длинное
do {s[i++]; } while (s[i]=='0' || s[i]=='1' || s[i]=='2'|| s[i]=='3'|| s[i]=='4'|| s[i]=='5'|| s[i]=='6'|| s[i]=='7'|| s[i]=='8'|| s[i]=='9');
a++;} //собираем колчиство цифр
}
cout <<a; //выводим сколько было чисел
return 0; //усе, пятерка обеспечена
}

Я ТРЕБУЮ ПЛЮСОВ!!!!!!!!1


upd. девочка которая это смотрит - если надо именно сколько цифр, типа если числа из одного символа состоят то убери из кода эту строчку
do {s[i++]; } while (s[i]=='0' || s[i]=='1' || s[i]=='2'|| s[i]=='3'|| s[i]=='4'|| s[i]=='5'|| s[i]=='6'|| s[i]=='7'|| s[i]=='8'|| s[i]=='9');

Dhsus
25.03.2010, 10:02
[QUOTE=EndLeSSDre@M]Dhsus вот держи свою лабу:

Скачать исходники (http://slil.ru/28847755)

http://s45.radikal.ru/i110/1003/be/d58fdc91f7aa.jpg[/QUOTEС
Спасибо большое.

seowayder
25.03.2010, 15:10
Ребят, а мне поможете? Прежний пейдж...

BrainDeaD
25.03.2010, 16:22
Ребят, а мне поможете? Прежний пейдж...
http://www.overclock.net/attachments/coding-programming/125872d1255454825-c-merge-sort-help-lab5-mergesort.pdf

Heroini.14.3
25.03.2010, 19:03
Хелп ми плиз)))
Нужно написать прогу для управления б.д.
Суть в том что должна быть менюшка,в которой пункты - добавить в базу,посмотреть базу,удалить из базы и редактировать базу. Собственно в самой базе должны быть записаны имя,фамилия,номер группы(с фильтром значиений от 1* до 7*(всм по первой цифре,всего цифр максимум 5),и оценки по трем предметам.
И написать все это дело нужно на чистом С (без ++)(главное чтоб в компилятор turbo c пахало))))
Заранее благодарен))))

Bengl
25.03.2010, 19:03
"В диапозоне от А до В найти все числа в которых не встречается цифра 6".

program odin;
var a,b,c,d,f:integer;
begin
writeln('Введите первое число диапозона');
read(a);
writeln('Введите второе число диапозона');
read(b);
for c:=a to b do
begin
d:=c mod 10;
f:=c div 10;
if (f<>6) and (d<>6) then
write(c);
end;
end.


Этот код работает не для всех диапозонов... если взять от 1000 до 2000. То там будут цифры 6.

Как можно реализовать работу программы для любых диапозонов ?

Pr0mo
25.03.2010, 19:24
"В диапозоне от А до В найти все числа в которых не встречается цифра 6".

Вообще-то "говно-код", но будет работать. :)

program odin;
var a,b,c,d,f:integer;
tmp:string;
begin
writeln('Введите первое число диапозона');
read(a);
writeln('Введите второе число диапозона');
read(b);
for c:=a to b do
begin
tmp:=inttostr(c);
if pos(inttostr(6),tmp)=0 then
writeln(c);
end;
readln;
readln;
end.

Bengl
25.03.2010, 19:44
спасибо... но я такое не изучал еще :) я думаю там как то можно еще через циклы сделать...

NTFF
25.03.2010, 19:49
Помогите с реализацией двухсвязного списка в паскале

может есть вариант как-то преобразовать существующий список если это возможно то вот код:

Если нет то вот условие
Разработать справочник пассажирских поездов с полями: номер поезда, станции отправления и назначения, время в дороге, категория поезду. Реализовать подпрограммы поиска: 1) по станциям отправления и назначения, 2) по категории поезду.

program Records;
uses
crt, strings;
const
max = 100;
type

Ttrain = record
Otpravlenie : string[40];
Pribitie : string[40];
Category : string[10];
Time : string[10];
Number : string[10];
end;

Ttrains = array [1..max] of Ttrain;


procedure SngWindow(x1,y1,x2,y2,tc,c : byte);
begin
window(x1,y1,x2,y2);
textbackground(c); textcolor(tc);
clrscr;
end;


procedure DblWindow(x1,y1,x2,y2,tcolor, c1, c2 : byte);
begin
window(x1,y1,x2,y2);
textbackground(c1);
clrscr;
window(x1+1,y1+1,x2-1,y2-1);
textbackground(c2);
textcolor(tcolor);
clrscr;
end;


function Menu : byte;
var
punkt : byte;
er : integer;
s : string;
begin

SngWindow(1,1,80,25,WHITE,BLACK);

SngWindow(1,6,80,25,WHITE,BLUE);

repeat

DblWindow(1,1,80,5,YELLOW,MAGENTA,BLUE);
writeln;
write(' 1.ADD 2.DELETE 3.PRINT 4.SEARCH 5.EXIT');
readln(s);
val(s,punkt,er);
until (er=0) and (punkt>=1) and (punkt<=5);
Menu := punkt;
end;

function SubMenu : byte;
var
punkt : byte;
er : integer;
s : string;
begin

SngWindow(1,1,80,25,WHITE,BLACK);
SngWindow(1,6,80,25,WHITE,BLUE);
repeat

DblWindow(1,1,80,5,YELLOW,MAGENTA,BLUE);
writeln;
write(' 1.Otpravlenie 2.Pribitie 3.Number 4.Exit');
readln(s);
val(s,punkt,er);
until (er=0) and (punkt>=1) and (punkt<=4);
SubMenu := punkt;
end;

procedure AddRecord(var mas : Ttrains; var n : byte; size : byte);
var
s : String;
er : integer;
begin

if (n+1 <= size) then
begin
inc(n);

write('Point of otpravlenie =>'); readln(mas[n].Otpravlenie);
write('Point of pribitie =>'); readln(mas[n].Pribitie);
write('Category of train =>'); readln(mas[n].Category);
write('Time in the way =>'); readln(mas[n].Time);
write('Number of train =>'); readln(mas[n].number);

writeln('Record is saving....');
end
else writeln('ERROR record is lost');
end;

procedure PrintRecord(var mas : Ttrains; i : integer);
begin
write(i:3);
with mas[i] do
begin
write(Otpravlenie:23); write(Pribitie:20);
write(Category:10); write(Time:10);
write(Number:12);
writeln;
end;
end;

procedure Print(var mas : Ttrains; n : integer);
var
i : integer;
begin
writeln('#':3,'Otpravlenie':23,'Pribitie':20,'Cate gory':10,'Time':10,'Number':12);
for i:=1 to n do
PrintRecord(mas,i);
end;

procedure DelRecordByotpr(var mas : Ttrains; var n : byte; botpr : string);
var
i,j : integer;
begin
writeln('#':3,'Otpravlenie':23,'Pribitie':20,'Cate gory':10,'Time':10,'Number':12);
for i:=1 to n do
begin
with mas[i] do

if (Otpravlenie = botpr) then
begin
PrintRecord(mas,i);

for j:=i+1 to n do
mas[j-1] := mas[j];
dec(n);
end;
end;
end;

procedure FindByotpr(var mas : Ttrains; n : integer; botpravlenie : string);
var
i : integer;
begin
writeln('#':3,'Otpravlenie':23,'Pribitie':20,'Cate gory':10,'Time':10,'Number':12);

for i:=1 to n do
with mas[i] do

if otpravlenie=botpravlenie then PrintRecord(mas,i);
end;

procedure FindByCat(var mas : Ttrains; n : integer; ba, bst : string);
var
i : integer;
begin
writeln('#':3,'Otpravlenie':23,'Pribitie':20,'Cate gory':10,'Time':10,'Number':12);

for i:=1 to n do
with mas[i] do

if (pribitie=ba) and (Category=bst) then PrintRecord(mas,i);
end;

procedure FindBynum(var mas : Ttrains; n : integer; bnumber : string);
var
i : integer;
begin writeln('#':3,'Otpravlenie':23,'Pribitie':20,'Cate gory':10,'Time':10,'Number':12);

for i:=1 to n do
with mas[i] do

if number=bnumber then PrintRecord(mas,i);
end;

var
b : Ttrains;
n : byte;
punkt : byte;
subpunkt : byte;
trainotprav,
a,
st : string;
y : string;
s : string;
er : integer;
begin
n := 0;
SngWindow(1,1,80,25,WHITE,BLACK);
repeat
punkt:= Menu;
case (punkt) of
1:begin
SngWindow(1,6,80,25,WHITE,BLUE);
writeln(' ADD train');
AddRecord(b,n,max);
readkey;
end;
2:begin
SngWindow(1,6,80,25,WHITE,BLUE);
writeln(' Delete by otpravlenie');

write('Otpravlenie =>');
readln(trainotprav);

DelRecordByotpr(b,n,trainotprav);
readkey;
end;
3:begin
SngWindow(1,6,80,25,WHITE,BLUE);
writeln(' Catalog of trains');
Print(b,n);
readkey;
end;
4:begin
repeat
subpunkt := SubMenu;
case (subpunkt) of
1:begin
SngWindow(1,6,80,25,WHITE,BLUE);
writeln(' Train by otpravlenie ');
write('Otpravlenie =>');
readln(trainotprav);
findbyotpr(b,n,trainotprav);
readkey;
end;
2:begin
SngWindow(1,6,80,25,WHITE,BLUE);
writeln(' Train by pribitie and category ');

write('Pribitie =>');
readln(a);

write('Category =>');
readln(st);
findByCat(b,n,a,st);
readkey;
end;
3:begin
SngWindow(1,6,80,25,WHITE,BLUE);
writeln(' Train by number ');
write('number =>');
readln(y);
findbynum(b,n,y);
readkey;
end;
end;
until (subpunkt = 4);
end;
end;
until (punkt = 5);
SngWindow(1,1,80,25,WHITE,BLACK);
end.

RedBull@12
25.03.2010, 20:26
Всем привет.

нужно написать 27+16 задач на ASM'е задачи не сложные, готов на платной основе, ваша цена и сроки.
задачи такого типа:
1-Написать процедуру поиска элемента в неупорядочном массиве
DS:SI-указатель на массив, CX- количество элементов в массиве,BL-искомое значение
или
13-напсиать процедуру производяющую следующие действия
Bi = Ai*127; 0<=i<n
DS:SI -адрес исходного массива; CX-n;DS:DI-адрес результирующего массива, элемента - двухбайтовые числа.
и т.д.
кто возьмется пиши в ПМ
все оставшиеся задачи в архиве
http://slil.ru/28853679 пароль 1251

Heroini.14.3
25.03.2010, 21:58
Хелп ми плиз)))
Нужно написать прогу для управления б.д.
Суть в том что должна быть менюшка,в которой пункты - добавить в базу,посмотреть базу,удалить из базы и редактировать базу. Собственно в самой базе должны быть записаны имя,фамилия,номер группы(с фильтром значиений от 1* до 7*(всм по первой цифре,всего цифр максимум 5),и оценки по трем предметам.
И написать все это дело нужно на чистом С (без ++)(главное чтоб в компилятор turbo c пахало))))
Заранее благодарен))))
Прошу прощения за повторение)))Но пзц как срочно надо)))

seowayder
26.03.2010, 00:45
Спасибо, но не помогло :(

KrabKN
27.03.2010, 13:50
#include <iostream.h>
#include <string.h>
struct Spisok
{
char FIO[35];
int vik;
float seredni_bal;

};

char funcVvoda(Spisok &spisok)
{

cout<<"Vvedite predlogaemie parametri :\n";
cout<<"FIO: ";
cin>>spisok.FIO;
cout<<"\n";
cout<<"vik: ";
cin>>spisok.vik;
cout<<"\n";
cout<<"seredni bal: ";
cin>>spisok.seredni_bal;
cout<<"\n";
}
char funcVivoda(Spisok spisok)
{
cout<<"FIO: ";
cout<<spisok.FIO;
cout<<"\n\n";
cout<<"vozrast: ";
cout<<spisok.vik;
cout<<"\n";
cout<<"sereni_bal: ";
cout<<spisok.seredni_bal;
cout<<"\n";
}
int main()
{
Spisok spisok;
int vibor;

while(1)
{
cout<<"\n1.Vvod dannix\n";
cout<<"2.Vuvod dannih\n";
cout<<"3. Exit\n";

cin>>vibor;
{
if (vibor==1)
funcVvoda(spisok);
else
if (vibor==2)
{
funcVivoda(spisok);
}
else
cout<<"\n Sorry Error\n";
}
}
return 0;
}

мне нужно ввести 5 вввода даних чтоб каждий раз невыскакивало меню

помогите!!
где нужно for ставить
допишите программу!

DJeFRY_RASH
27.03.2010, 15:46
Помогите написать программу на Delphi. У кого есть какие мысли как реализовать ?

Заданы координаты острых углов прямоугольного треугольника и значение острого угла. Программа определяет координаты третьей вершины(четыре решения), длину всех сторон и площадь треугольника.

TPAXTOP
27.03.2010, 19:14
Помогите, ПОЖАЛУЙСТА!!!Нужно решить на Паскале...СРОЧНО!!!

Задали задачу, которая состоит из 3 частей, первую сделал, дальше не получается...=(

1.Вычислить элементы матрицы по формуле:
формула; значение i,j. (http://upload.com.ua/get/901498408/)

Это пока работает, а вот то, что дальше - нет(помогите!плз!

2. Сформировать вектор Х(х1,х2,х3..х5), каждый элемент которого определяется как сумма элементов диагоналей матрицы(матрица, которая получилась с задания номер 1)

3. Вычислить значение G за формулой (http://upload.com.ua/get/901498416/)

Нужно чтоб все было сделано как одна программа.

TPAXTOP
27.03.2010, 19:31
Помогите, ПОЖАЛУЙСТА!!!Нужно решить на Паскале...СРОЧНО!!!

Задали задачу, которая состоит из 3 частей, первую сделал, дальше не получается...=(

1.Вычислить элементы матрицы по формуле:
формула; значение i,j. (http://upload.com.ua/get/901498408/)

Это пока работает, а вот то, что дальше - нет(помогите!плз!

2. Сформировать вектор Х(х1,х2,х3..х5), каждый элемент которого определяется как сумма элементов диагоналей матрицы(матрица, которая получилась с задания номер 1)

3. Вычислить значение G за формулой (http://upload.com.ua/get/901498416/)

Нужно чтоб все было сделано как одна программа.

Кстати, вот ТО (http://upload.com.ua/get/901498447/), что получилось у меня.

Lewis Carroll
27.03.2010, 21:17
Задача следующего плана:

составить программу, сравнивающую три вида сортировок (любые сортировки т.е. быстрая, пузырьком и т. д. все годятся) и выдающую в результате сколько времени было затрачено на сортировку массива данных. (желательный размер массива ~100 кб, чтобы разница во времени была очевидной)

язык C/C++

заранее благодарен.

TPAXTOP
28.03.2010, 12:59
Помогите, ПОЖАЛУЙСТА!!!Нужно решить на Паскале...СРОЧНО!!!

Задали задачу, которая состоит из 3 частей, первую сделал, дальше не получается...=(

1.Вычислить элементы матрицы по формуле:
формула; значение i,j. (http://upload.com.ua/get/901498408/)

Это пока работает, а вот то, что дальше - нет(помогите!плз!

2. Сформировать вектор Х(х1,х2,х3..х5), каждый элемент которого определяется как сумма элементов диагоналей матрицы(матрица, которая получилась с задания номер 1)

3. Вычислить значение G за формулой (http://upload.com.ua/get/901498416/)

Нужно чтоб все было сделано как одна программа.
ПОМОГИИИИТЕ....(

IgrikX
28.03.2010, 16:09
Есть у кого пример циклической очереди на Turbo C? Скиньте пожалуйста!

n1ghtstalker
28.03.2010, 17:35
HeeeeLP!

эм ну как бы про диагонали я что то не догнал.
максимум x1,x2 будет. тк в матрице существует только 2 диагонали.

а формулу расписывать лень пока ) ты уж извини. там ничего сложного в ней нет.

Lewis Carroll
28.03.2010, 19:28
Задача следующего плана:

составить программу, сравнивающую три вида сортировок (любые сортировки т.е. быстрая, пузырьком и т. д. все годятся) и выдающую в результате сколько времени было затрачено на сортировку массива данных. (желательный размер массива ~100 кб, чтобы разница во времени была очевидной)

язык C/C++

заранее благодарен.


up

TPAXTOP
28.03.2010, 23:04
эм ну как бы про диагонали я что то не догнал.
максимум x1,x2 будет. тк в матрице существует только 2 диагонали.

а формулу расписывать лень пока ) ты уж извини. там ничего сложного в ней нет.

емм...ну этих диагоналей будет как бы 6....это типа метод Крамера...помогите, пожалуйста...

n1ghtstalker
29.03.2010, 18:29
это тогда не диагонали а столбцы матрицы. ты не можешь сложить столбцы матрицы что ли?

[STH]
29.03.2010, 22:24
кому не сложно помогите решить
1.Даны строки S, S1 и S2. Заменить в строке S второе вхождение строки S1 на строку S2
2.var x, y: set of 8..22; Переменной x присвоить множество всех целых чисел от 8 до 22, переменной y - множество всех чнтных чисел от 8 до 22
3.Дан файл, компоненты котоpого являются действительными числами. Hайти модуль суммы и квадpат пpоизведения компонент файла f
4.Дан текстовый файл f. Исключить пpобелы, стоящие в начале его стpок. Результат поместить в файл f1.
5.Описать процедуру AddRightDigit(D, K), добавляющую к целому положительному числу K справа цифру D (D — входной параметр целого типа, лежащий в диапазоне 0–9, K — параметр целого типа, являющийся одновременно входным и выходным). С помощью этой процедуры последовательно добавить к данному числу K справа данные цифры D1 и D2, выводя результат каждого добавления.

Iron47
29.03.2010, 23:16
нужно чуть помочь по лабе на С.

Треугольник паскаля

#include <stdio.h>
#include <conio.h>
#define N 1000
long c[N];
int main ()
{
long n, i, j;
for(n=0; n<6;n++)
{
for(i = 0; i <=n ; i++)
c[i] =0;
c[0] = 1;
for(j = 0 ; j <=n; j++)
for(i = j; i >= 1 ; i--)
c[i] = c[i-1] + c[i];
for(i = 0; i <= n ; i++)

printf ("% d", c[i]);
printf("\n");
}
getch();
return 0;
}


Треугольник выводится прямоугольным, а надо равносторонний

xxxxxxxxxxxxxxx
30.03.2010, 02:21
Треугольник выводится прямоугольным, а надо равносторонний

#include<stdio.h>

int main()
{
int i, j,n,*p,check=1, blank, memspace, mem=0, rowdiff=1;
printf("Enter the number of rows:");
scanf("%d",&n);
blank=n-1;
memspace=((n*(n+1))/2);
p=(int*)malloc(sizeof(int)* memspace);
for(i=0;i<n;i++){
printf("\n");
for(j=0;j<blank;j++)
printf(" ");
for(j=0;j<check;j++){
if(j==0 || j==(check-1))
p[mem]=1;
else
p[mem]=p[mem-rowdiff] + p[mem-rowdiff+1];
printf("%d ",p[mem]);
mem++;
}
for(j=0;j<blank;j++)
printf(" ");
blank--;
check++;
rowdiff++;
}
}

DIDn"t
30.03.2010, 09:56
Ребятки помогите задачку по паскалю решить:

Дан двумерный массив А(N,N). Найти среднее арифметичечское его положительных элементов.

Нужно решить через процедуру.

fenixelite
30.03.2010, 10:55
Как то так ))


m: array [1..n,1..n] of integer;

procedure sum;
var
i,a,summa:integer;
begin
for i:=1 to n do
for a:=1 to n do
if m[i,a]>0 then
summa:=summa+m[i,a];
write(summa);
end;

ben1991
30.03.2010, 11:28
Привет всем...можете написать следующие программы на АСМ...Я незнаю алгоритма построения программ...
1)Составить ассемблер-программу кодирования и раскодирования произвольной текстовой строки по произвольной кодирующей таблице. Вывести на экран исходную, колированную и раскодированную строки.
2)Сбросить биты 1, 4, 5, 10, 12, 15 заданного слова ОП.
3)Через сдвиг быстро умножить заданное слово ОП на 30.
4)Копировать из заданного массива слов в другой массив только отрицательные числа.
5)Создайте произвольное собственное прерывание и занесите его в любое место таблицы векторов прерывания.

LEGHEBOKA
30.03.2010, 12:48
Здарово народ, помогите пожалуста решить задание по
лабе по турбо паскалю.
УСЛОВИЕ:
Дан массив А(N,N). Поменять элементы К-ой строки с элементами последней строкой этого массива. Переписать в одномерный массив элементы К-ой строки. Первоначальный и преобразованый двумерные массивы и одномерный массив вывести на экран.

DIDn"t
30.03.2010, 13:11
Как то так ))
Код:
m: array [1..n,1..n] of integer;

procedure sum;
var
i,a,summa:integer;
begin
for i:=1 to n do
for a:=1 to n do
if m[i,a]>0 then
summa:=summa+m[i,a];
write(summa);
end;

спс, уже сам решил, там подругому немного

Genry13
31.03.2010, 19:39
Знающие, напишите плиз код на асемблере на условие: Дан массив из 15 байт с начальным адресом 35. Заменить нулями положительные числа.

TPAXTOP
31.03.2010, 21:26
Помогите, ПОЖАЛУЙСТА!!!Нужно решить на Паскале...СРОЧНО!!!

Задали задачу, которая состоит из 3 частей, первую сделал, дальше не получается...=(

1.Вычислить элементы матрицы по формуле:
формула; значение i,j. (http://upload.com.ua/get/901498408/)

Это пока работает, а вот то, что дальше - нет(помогите!плз!

2. Сформировать вектор Х(х1,х2,х3..х5), каждый элемент которого определяется как сумма элементов диагоналей матрицы(матрица, которая получилась с задания номер 1)

3. Вычислить значение G за формулой (http://upload.com.ua/get/901498416/)

Нужно чтоб все было сделано как одна программа.
ПОМОГИИИИТЕ....(

EndLeSSDre@M
31.03.2010, 21:38
пля не нравится мне этот ФО! залей на радикал и скинь скрины сюда чтоб сразу видеть..

DIDn"t
01.04.2010, 00:07
Помогите плз с лабораторной, завтра нужно сдать

задачку сделать с использованием функций ,
турбо паскаль

Заданы 2 двумерных массива А(М,М) и В(К,К). Переписать в один одномерный массив элементы главной и побочной диагонали массива А , а в другой одномерный массив элементы главной и побочной диагоналей массива В. Использовать подпрограммы.

LEGHEBOKA
01.04.2010, 00:31
Помогите плз с лабораторной, завтра нужно сдать

задачку сделать с использованием функций ,
турбо паскаль

Заданы 2 двумерных массива А(М,М) и В(К,К). Переписать в один одномерный массив элементы главной и побочной диагонали массива А , а в другой одномерный массив элементы главной и побочной диагоналей массива В. Использовать подпрограммы.

Да ты че с ума сошёл, такую лехкотню не можешь решить. Позор тебе. Книжки те надо читать, а не по всяким сайтам шастать. Иди сам делай.

TPAXTOP
01.04.2010, 00:33
пля не нравится мне этот ФО! залей на радикал и скинь скрины сюда чтоб сразу видеть..

Помогите, ПОЖАЛУЙСТА!!!Нужно решить на Паскале...СРОЧНО!!!

Задали задачу, которая состоит из 3 частей, первую сделал, дальше не получается...=(

1.Вычислить элементы матрицы по формуле:
формула, элементы (http://s005.radikal.ru/i210/1003/34/e1c875e565e8.jpg)

Это пока работает, а вот то, что дальше - нет(помогите!плз!

2. Сформировать вектор Х(х1,х2,х3..х5), каждый элемент которого определяется как сумма элементов диагоналей матрицы(матрица, которая получилась с задания номер 1)

3. Вычислить значение G за формулой (http://s57.radikal.ru/i156/1003/68/906a22a1f03c.jpg)

Нужно чтоб все было сделано как одна программа.

Первую задачу сделал, но как сделать 2-ую и 3 относительно 1-ой - ХЗ(

DIDn"t
01.04.2010, 03:08
LEGHEBOKA Да ты че с ума сошёл, такую лехкотню не можешь решить. Позор тебе. Книжки те надо читать, а не по всяким сайтам шастать. Иди сам делай.

:D
LEGHEBOKA Здарово народ, помогите пожалуста решить задание по
лабе по турбо паскалю.
УСЛОВИЕ:
Дан массив А(N,N). Поменять элементы К-ой строки с элементами последней строкой этого массива. Переписать в одномерный массив элементы К-ой строки. Первоначальный и преобразованый двумерные массивы и одномерный массив вывести на экран.

P.S.
актуально
Помогите плз с лабораторной, завтра нужно сдать

задачку сделать с использованием функций ,
турбо паскаль

Заданы 2 двумерных массива А(М,М) и В(К,К). Переписать в один одномерный массив элементы главной и побочной диагонали массива А , а в другой одномерный массив элементы главной и побочной диагоналей массива В. Использовать подпрограммы.

new-sl
01.04.2010, 12:43
всем ривет я хачу написать шахматы вот тока знаний у меня нехватает пока для этого посоветуите книгу или статю на ету тему где нетолко стоит Альфа-бета-отсечение а полностю код харошо розоброный и понятно описнаый скачал книгу "програмирование шахмат и других логичиских игр " тока там описание на С понять в принципи мошно но там работает он побитно а не обэктно орентировано да и обяснает както неочен на мои взгля или может я тупои :) просто кароче ест ли ченит в етом роде пишите буду благодарен !!!

n1ghtstalker
01.04.2010, 16:39
всем ривет я хачу написать шахматы вот тока знаний у меня нехватает пока для этого посоветуите книгу или статю на ету тему где нетолко стоит Альфа-бета-отсечение а полностю код харошо розоброный и понятно описнаый скачал книгу "програмирование шахмат и других логичиских игр " тока там описание на С понять в принципи мошно но там работает он побитно а не обэктно орентировано да и обяснает както неочен на мои взгля или может я тупои :) просто кароче ест ли ченит в етом роде пишите буду благодарен !!!

молодой человек для начала вам бы прочитать это:
_http://www.google.ru/search?hl=ru&source=hp&q=%D1%81%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C+%D0%B E%D1%80%D1%84%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8% D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9+%D1%81%D0%BB%D 0%BE%D0%B2%D0%B0%D1%80%D1%8C+%D1%80%D1%83%D1%81%D1 %81%D0%BA%D0%BE%D0%B3%D0%BE+%D1%8F%D0%B7%D1%8B%D0% BA%D0%B0&lr=&aq=0&aqi=g8&aql=&oq=%D1%81%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C+%D0% BE%D1%80%D1%84%D0%BE%D0%B3%D1%80%D0%B0%D1%84&gs_rfai=

LASS0
01.04.2010, 16:46
Помогите :(
Pascal:
В строке найти слова, которые содержат хотя бы одну букву 'k'

Soherox
01.04.2010, 17:13
LASS0..держи, слова разделяются пробелами
var
s, a: string;
i, rez: integer;
ok: boolean;
begin
readln(s);
ok:=false;
rez:=0; s:=s+' ';
a:='';
for i:=1 to length(s) do
begin
if s[i]<>' ' then
begin
a:=a + s[i];
if s[i] = 'k' then ok:=true;
end
else
begin
if ok then
begin
writeln(a);
ok:=false;
end;
a:='';
end;
end;
readln;
end.

rid3r~man
01.04.2010, 21:13
Помогите плз разобраться.

Требуется составить програму на Паскале, которая выводит на экран все натуральные трехзначные числа,
делящиеся без остатка на 17, сумма цифр которых равняется 11.

Получилось вот что:
var
x,y,z,a,i,s:integer;
Begin
For i:=100 to 999 do
x:=i div 100;
y:=(i div 10) mod 10;
z:=i mod 10;
Begin
a:=x+y+z;
If (a=11) and (i mod 17 = 0) then s:=s+i;
writeln ('s',s);
readln;
end;
end.

Выводит: s=0
Что не так, подскажите пожалст?

Так же еще пробывал

Begin
i:=100
{тут манипуляции с числами, дальше сам цикл}
If (a=11) and (i mod 17 = 0) then s:=s+i else i:=i+1;
writeln ('s',s);
readln;
end;

И cнова s=0.
Только тут программа не выйдет из цикла при i=999, как это сделать??

Soherox
01.04.2010, 21:29
rid3r~man..держи
var
x, y, z, a, i, s:integer;
Begin
For i:=100 to 999 do
begin
x:=i div 100;
y:=(i div 10) mod 10;
z:=i mod 10;
a:=x+y+z;
If (a = 11) and (i mod 17 = 0) then writeln (i);
end;
readln;
end.

new-sl
01.04.2010, 22:24
молодой человек для начала вам бы прочитать это:
_http://www.google.ru/search?hl=ru&source=hp&q=%D1%81%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C+%D0%B E%D1%80%D1%84%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8% D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9+%D1%81%D0%BB%D 0%BE%D0%B2%D0%B0%D1%80%D1%8C+%D1%80%D1%83%D1%81%D1 %81%D0%BA%D0%BE%D0%B3%D0%BE+%D1%8F%D0%B7%D1%8B%D0% BA%D0%B0&lr=&aq=0&aqi=g8&aql=&oq=%D1%81%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C+%D0% BE%D1%80%D1%84%D0%BE%D0%B3%D1%80%D0%B0%D1%84&gs_rfai=
чето ты какуето..(похоже на неудачную попитку ломонут гоогле :) ) запостил нечо ненаходит пошли ключивое слово по каторому искал

rid3r~man
02.04.2010, 08:14
Soherox Спасибо.
А как все таки здесь сделать, чтобы программа вышла из цикла после i=999 ??

Begin
i:=100
{тут манипуляции с числами, дальше сам цикл}
If (a=11) and (i mod 17 = 0) then s:=s+i else i:=i+1;
writeln ('s',s);
readln;
end;

Soherox
02.04.2010, 08:53
А как все таки здесь сделать, чтобы программа вышла из цикла после i=999 ??


Begin
i:=100
{тут манипуляции с числами}
If (a=11) and (i mod 17 = 0) then s:=s+i else i:=i+1;
writeln ('s',s);
readln;
end;


Я как понял тут ты используешь цикл While? Тогда так:

begin
i:=100;
while i<>999 do
begin
{тут манипуляции с числами, дальше сам цикл}
If (a = 11) and (i mod 17 = 0) then s:=s+i;
i:=i+1;
end;
writeln(s);
readln;
end.

new-sl
02.04.2010, 11:58
почему когда в алгоритми алфа-бета ; алфа==бета то происходит отсичение со сторони бета я никак непоиму почему чем становится посизия бета хуже расталкуите плиз!!!

fenixelite
02.04.2010, 12:18
Ничего не понял.... Оо нормально напиши!

new-sl
02.04.2010, 12:28
Ничего не понял.... Оо нормально напиши!

int AlphaBeta (pos, depth, alpha, beta)
{
&nbspif (depth == 0) return Evaluate(pos);
&nbspbest = -INFINITY;
&nbspsucc = Successors(pos);
&nbspwhile (not Empty(succ) && best < beta)
{
&nbsppos = RemoveOne(succ);
&nbspif (best > alpha) alpha = best;
&nbspvalue = -AlphaBeta(pos, depth-1, -beta, -alpha);
&nbspif (value > best) best = value;
}
&nbspreturn best;
}

&nbspwhile (not Empty(succ) && best < beta)
тут если алфа болше то проишодит отсичение вот и вапрос чем бета становится хуже чем алфа если алфа равна или болше бета ну болше ясно а вот ровна :) непонятно

wagen
02.04.2010, 13:52
1 ЗАДАЧА)
Написатьь программу котороя вычисляет сумму певых n целых положительных чётных чисел.
Количество суммируемых чисел должно вводится во время работы программы.
2 ЗАДАЧА)
Написать программу вычесления площади кольца. программа должна проверять правельность исходных данных.
Рекомендуемый вид программы :
вычесление площади кольца. Введите исходные данные: Радиус кольца (см)->3.5
Радиус отверстия(см)->7
Ошибка! РАдиус отверстия не может быть больше раддиуса кольца.

CyberHunter
02.04.2010, 14:07
Вот первая, но не знаю будет ли она работать, т.к. нет возможности проверить.
Program suma;
var
n, c, i, suma:integer;
begin
Writeln("Vvedi kolichestvo");
Readln(n)
Writeln("Vvedi n chisel");
Readln(c);
for i:=1 to n do
begin suma:= suma+c;
end;
writeln(suma);
end.

Soherox
02.04.2010, 14:12
Вот первая, думаю так легче))))

var
n: integer;
begin
readln(n);
writeln((1 + n)*n);
readln;
end.

CyberHunter
02.04.2010, 14:20
Вот так вторая:
Program kolco;
const p=3.14;
var radius_kolca, radius_otverstia, S_kolca:integer;
begin
Writeln("Vvedite radius kolca");
Readln(radius_kolca);
Writeln("Vvedite radius otverstia");
Readln(radius_otverstia);
if radius_otverstia>radius_kolca then
writeln("radius_otverstia ne mozhet bit bolshe radius_kolca")
else S_kolca:=p*(sqr(radius_kolca)-sqr(radius_otverstia));
writeln(S_kolca);
end.

Знающие проверьте правильно ли написал :).

EndLeSSDre@M
02.04.2010, 14:26
вторая))) кто обосрет мой код получит плюс)))

var
so,sk,s,rk,ro: float;
begin

while rk<=ro do
begin
writeln('vvedide radius colca');
readln(rk);
writeln('vvedide radius otverstia');
readln(ro);
if rk<=ro then writeln('ne vernij vvod');
end;
sk:=pi*sqr(rk);
so:=pi*sqr(ro);
s:=sk-so;
writeln('Ploshad=',s);
readln;
end.

moodoone
02.04.2010, 14:28
Вот мой вариант 2 задачи)
Program kryg;
var
n,k,s,s1,s2:integer;
begin
writeln('Vvedite radiys koltsa');
readln(n);
writeln('vvedite radiys otverstvuja');
readln(k);
if k>n tnen writeln ('Oshibka! RAdius otverstiya ne mozhet byt bo'she radiusa kolca') else
s1:=3.14*sqr(n);
s2:=3.14*sqr(k);
s:=s1-s2;
writeln ('plowad kolca- ',s)
end.

CyberHunter
02.04.2010, 14:28
EndLeSSDre@M у меня как бы тоже самое. Или я ошибаюсь?

moodoone
02.04.2010, 14:29
wagen, уже имеешь 3 варианта и все похожи))

EndLeSSDre@M
02.04.2010, 14:30
EndLeSSDre@M у меня как бы тоже самое. Или я ошибаюсь?

ну я через циклы решил попробовать сделать) чтоб в случае ошибки, был возможен новый ввод, а не закрытие программы

CyberHunter
02.04.2010, 14:32
ну я через циклы решил попробовать сделать) чтоб в случае ошибки, был возможен новый ввод, а не закрытие программы
Хотел спросить, а в паскале можно вот так делать sk:=pi*rk^2;
so:=pi*ro^2;
Ну типа вот так: ^ в степень поднимать?

EndLeSSDre@M
02.04.2010, 14:33
Хотел спросить, а в паскале можно вот так делать sk:=pi*rk^2;
so:=pi*ro^2;
Ну типа вот так: ^ в степень поднимать?

ммм... не помню))) ну щас через sqr() сделаю))

переделал))) ++тебе за нахождение косяка))

Swat2k и вообще на сколько я помню, мне Soherox говорил, что константа Pi по умолчанию там есть, и ее не обязательно делать... ну может я че то путаю, поэтому не буду переделывать

Swat2k
02.04.2010, 14:35
Раз тут все вариантами мерюются , то вот мой вариант ))


var
s1,s2:real;
begin
writeln('#########################');
write('R (kolca) = ');
readln(s2);
write('R (otverstia) = ');
readln(s1);
if (s1>=s2) then writeln('Error : R(otverstia) >= R(kolca)')
else writeln('S (kolca) = ',pi*(s2*s2-s1*s1):3:3);
end.

Soherox
02.04.2010, 14:36
Вот отлаженная и исправленная версия EndLeSSDre@M


type
real = extended;
var
so,sk,s,rk,ro: real;
ok: boolean;
begin
ok:=false;
while not ok do
begin
writeln('vvedide radius colca');
readln(rk);
writeln('vvedide radius otverstia');
readln(ro);
if rk<=ro then writeln('ne vernij vvod')
else
begin
sk:=pi*sqr(rk);
so:=pi*sqr(ro);
s:=sk-so;
writeln('Ploshad=',s:0:3);
ok:=true;
end;
end;
readln;
end.

В Паскале ^ нельзя использовать, так же в константу пихать pi не нужно, она и так есть :p

EndLeSSDre@M
02.04.2010, 14:38
Soherox Редиска ты))) я обиделся))) про ^ уже понял и переделал))) про константу запамятовал))) и все равно ты редиска))) :p ;)

и вообще надо уже научиться мне в лесенку делать код))) а то у тебя больно элегантно выглядит)

и вообще, если люди не могут решить задачи такой сложности, то че тут говорить о будущих программистах((( даже обидно как то :(

Swat2k
02.04.2010, 14:43
На счёт pi , да запамятовал , бывает :)

Porrter
02.04.2010, 19:25
Спроектировать и разработать программу позволяющую создавать процессы и
управлять уже созданными. Программа должна обладать следующим набором
возможностей:
В интерактивном режиме запускать указанные процессы.
Уничтожать указанный процесс (уничтожаться могут только процессы запущенные
программой). Уничтожаемый процесс указывается либо его описателем, либо
выбирается в интерактивном режиме.
Показать список всех процессов (а также своих копий) запущенных программой.
Программа должна знать о всех своих запушенных копиях.
Программа должна уметь обмениваться со своими копиями списками порождённых
процессов.
При закрытии программы она должна уничтожить все порождённые ею процессы.

Примечания:
Новый процесс запускается функцией CreateProcess и уничтожается функцией
TerminateProcess.
Запускаемый процесс указывается именем своего исполняемого файла.
Для обмена данными между копиями программы можно использовать переменные
окружения. Для работы с переменными окружения используются следующие функции:
GetEnvironmentVariable, SetEnvironmentVariable.
В случае реализации программы в консольном варианте для обработки попыток
закрытия программы необходимо использовать функцию SetConsoleCtrlHandle.
Описание необходимых функций можно посмотреть в MSDN Library.
Пользовательский интерфейс может быть реализован в любом варианте (текстовый,
графический).Спроектироват ь и разработать программу позволяющую создавать процессы и
управлять уже созданными. Программа должна обладать следующим набором
возможностей:
В интерактивном режиме запускать указанные процессы.
Уничтожать указанный процесс (уничтожаться могут только процессы запущенные
программой). Уничтожаемый процесс указывается либо его описателем, либо
выбирается в интерактивном режиме.
Показать список всех процессов (а также своих копий) запущенных программой.
Программа должна знать о всех своих запушенных копиях.
Программа должна уметь обмениваться со своими копиями списками порождённых
процессов.
При закрытии программы она должна уничтожить все порождённые ею процессы.

Примечания:
Новый процесс запускается функцией CreateProcess и уничтожается функцией
TerminateProcess.
Запускаемый процесс указывается именем своего исполняемого файла.
Для обмена данными между копиями программы можно использовать переменные
окружения. Для работы с переменными окружения используются следующие функции:
GetEnvironmentVariable, SetEnvironmentVariable.
В случае реализации программы в консольном варианте для обработки попыток
закрытия программы необходимо использовать функцию SetConsoleCtrlHandle.
Описание необходимых функций можно посмотреть в MSDN Library.
Пользовательский интерфейс может быть реализован в любом варианте (текстовый,
графический).

Porrter
02.04.2010, 19:26
Заранее благодарен=) Предпосительный язык - C#

cheater_man
02.04.2010, 21:51
Заранее благодарен=) Предпосительный язык - C#
Что WinApi + C# это гемор!
Лучше сам пиши на С++. Примеров дофига ;)

warkk
03.04.2010, 01:08
первая, проверяет вводимые числа на четность, если число не четное, ломает цикл.

program ddd;
uses crt;
var i,n,sum,t:integer;
begin clrscr;
write('Vvedite kol-vo: ');
read(n);
for i:=1 to n do
begin
write('Vvedite 4islo nomer ',i,': ');
readln(t);
if odd(t)=false then
sum:=sum+t
else
begin
writeln('4islo ',t,' ne 4etnoe');
break;
end;
end;
writeln('Suma 4isel = ',sum);
readkey
end.

Lewis Carroll
03.04.2010, 20:59
Задача следующего плана:

составить программу, сравнивающую три вида сортировок (любые сортировки т.е. быстрая, пузырьком и т. д. все годятся) и выдающую в результате сколько времени было затрачено на сортировку массива данных. (желательный размер массива ~100 кб, чтобы разница во времени была очевидной)

язык C/C++

заранее благодарен.

sveta11115
03.04.2010, 23:04
Помогите, пожалуйста, написать программу на С++:
Используя структурный тип данных, создать базу данных для обработки информации о студентах: фамилия, год рождения, факультет, группа, статус поступления.
и организовать с ней работу, включая поиск нужной информации, ее корректировку (изменение значений полей структур, дозапись информации в файл или ее удаление), вывод информации на экран.
Программа должна содержать меню, позволяющее работать с базой данных.
Спасибо

xxxxxxxxxxxxxxx
03.04.2010, 23:30
Помогите, пожалуйста, написать программу
Программа должна содержать меню, позволяющее работать с базой данных.
Спасибо

у меня есть приблизительно 500 строк кода, почему то сюда не полезли если очень надо пишите в асю или в лс

comichero92
04.04.2010, 11:22
Задача следующего плана:

составить программу, сравнивающую три вида сортировок (любые сортировки т.е. быстрая, пузырьком и т. д. все годятся) и выдающую в результате сколько времени было затрачено на сортировку массива данных. (желательный размер массива ~100 кб, чтобы разница во времени была очевидной)

язык C/C++

заранее благодарен.хм... наверно что-то такое#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>

void bubble(char *items, int count);
void shaker(char *items, int count);
void shell(char *items, int count);

int main(void)
{
FILE *fp;
FILE *s1;
FILE *s2;
FILE *s3;
char s[255];
time_t start, end;
volatile long unsigned t;

printf("read file");

if((fp = fopen("mass.txt", "r")) == NULL) {
printf(" : error.\n");
exit(1);
}

printf(" : ok.\n\n");

while(!feof(fp)) {
fgets(s, 253, fp);
}

start = time(NULL);
bubble(s, strlen(s));
end = time(NULL);
s1 = fopen("bubble.txt", "w");
fputs(s, s1);
printf("Bubble sort : ok.\n");
printf("time: %f s.\n\n", difftime(end, start));

start = time(NULL);
shaker(s, strlen(s));
end = time(NULL);
s2 = fopen("shaker.txt", "w");
fputs(s, s2);
printf("Cocktail shaker sort : ok.\n");
printf("time: %f s.\n\n", difftime(end, start));

start = time(NULL);
shaker(s, strlen(s));
end = time(NULL);
s3 = fopen("shell.txt", "w");
fputs(s, s3);
printf("Donald Lewis Shell sort : ok.\n");
printf("time: %f s.\n\n", difftime(end, start));

fclose(fp);
fclose(s1);
fclose(s2);
fclose(s3);
return 0;
}

// bubble sort
void bubble(char *items, int count)
{
register int a, b;
register char t;

for(a = 1; a < count; ++a)
for(b = count-1; b >= a; --b) {
if(items[b-1] > items[b]) {
t = items[b-1];
items[b-1] = items[b];
items[b] = t;
}
}
}

// cocktail shaker sort
void shaker(char *items, int count)
{
register int a;
int exchange;
char t;

do{
exchange = 0;
for(a = count-1; a >0; --a) {
if(items[a-1] > items[a]) {
t = items[a-1];
items[a-1] = items[a];
items[a] = t;
exchange = 1;
}
}

for(a = 1; a < count; ++a) {
if(items[a-1] > items[a]) {
t = items[a-1];
items[a-1] = items[a];
items[a] = t;
exchange = 1;
}
}
} while(exchange);
}

// Donald Lewis Shell sort
void shell(char *items, int count)
{
register int i, j, gap, k;
char x, a[5];

a[0] = 9; a[1] = 5; a[2] = 3; a[3] = 2; a[4] = 1;

for(k = 0; k < 5; k++) {
gap = a[k];
for(i = gap; i < count; ++i) {
x = items[i];
for(j=i-gap; (x < items[j]) && (j >= 0); j = j-gap)
items[j+gap] = items[j];
items[j+gap] = x;
}
}
}p.s. размер сортируемых данных думаю сам изменишь :)

Lewis Carroll
04.04.2010, 13:04
Большое спасибо )) а как работать с сортируемыми файлами? создать соответствующие файлы (bubble.txt shaker.txt shell.txt) заполненные данными?

comichero92
04.04.2010, 14:52
создать файл mass.txt, в нем то что будем сортировать, файлы bubble.txt, shell.txt и shaker.txt сами создадутся и в них будут отсортированные данные

Lewis Carroll
04.04.2010, 15:00
хм... наверно что-то такое#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>

void bubble(char *items, int count);
void shaker(char *items, int count);
void shell(char *items, int count);

int main(void)
{
FILE *fp;
FILE *s1;
FILE *s2;
FILE *s3;
char s[255];
time_t start, end;
volatile long unsigned t;

printf("read file");

if((fp = fopen("mass.txt", "r")) == NULL) {
printf(" : error.\n");
exit(1);
}

printf(" : ok.\n\n");

while(!feof(fp)) {
fgets(s, 253, fp);
}

start = time(NULL);
bubble(s, strlen(s));
end = time(NULL);
s1 = fopen("bubble.txt", "w");
fputs(s, s1);
printf("Bubble sort : ok.\n");
printf("time: %f s.\n\n", difftime(end, start));

start = time(NULL);
shaker(s, strlen(s));
end = time(NULL);
s2 = fopen("shaker.txt", "w");
fputs(s, s2);
printf("Cocktail shaker sort : ok.\n");
printf("time: %f s.\n\n", difftime(end, start));

start = time(NULL);
shaker(s, strlen(s));
end = time(NULL);
s3 = fopen("shell.txt", "w");
fputs(s, s3);
printf("Donald Lewis Shell sort : ok.\n");
printf("time: %f s.\n\n", difftime(end, start));

fclose(fp);
fclose(s1);
fclose(s2);
fclose(s3);
return 0;
}

// bubble sort
void bubble(char *items, int count)
{
register int a, b;
register char t;

for(a = 1; a < count; ++a)
for(b = count-1; b >= a; --b) {
if(items[b-1] > items[b]) {
t = items[b-1];
items[b-1] = items[b];
items[b] = t;
}
}
}

// cocktail shaker sort
void shaker(char *items, int count)
{
register int a;
int exchange;
char t;

do{
exchange = 0;
for(a = count-1; a >0; --a) {
if(items[a-1] > items[a]) {
t = items[a-1];
items[a-1] = items[a];
items[a] = t;
exchange = 1;
}
}

for(a = 1; a < count; ++a) {
if(items[a-1] > items[a]) {
t = items[a-1];
items[a-1] = items[a];
items[a] = t;
exchange = 1;
}
}
} while(exchange);
}

// Donald Lewis Shell sort
void shell(char *items, int count)
{
register int i, j, gap, k;
char x, a[5];

a[0] = 9; a[1] = 5; a[2] = 3; a[3] = 2; a[4] = 1;

for(k = 0; k < 5; k++) {
gap = a[k];
for(i = gap; i < count; ++i) {
x = items[i];
for(j=i-gap; (x < items[j]) && (j >= 0); j = j-gap)
items[j+gap] = items[j];
items[j+gap] = x;
}
}
}p.s. размер сортируемых данных думаю сам изменишь :)




а вторая сортировка это какая ?
первая - пузырек, третья - Шелла.. а вторая - ?..)

comichero92
04.04.2010, 15:21
шейкер сортировка(shaker sort), модифицированная пузырьковая

Lewis Carroll
04.04.2010, 17:35
А можно ли как то реализовать такую фичу, чтобы на основании затраченного времени строилась гистограмма для каждой сортировки?

xxxxxxxxxxxxxxx
04.04.2010, 20:06
А можно ли как то реализовать такую фичу, чтобы на основании затраченного времени строилась гистограмма для каждой сортировки?


например создать функцию вывода звездочек
void chart(difftime)
которая в цикле до difftime будет печатать "*"

Lewis Carroll
05.04.2010, 04:10
#include <iostream.h>
#include <conio.h>
#include <dos.h>
#define MAX 20
void bubble(int *x,int n);
void shell(int *x,int n);
void insert(int *x,int n);
void main()
{ int num[MAX],i;
int t1,t2;
cout << "Before sort:\n";
for(i=0; i<MAX; i++)
{ num[i]=random(MAX);
cout << num[i] << " ";
}
cout << endl;
t1=GetTickCount();
bubble(num,MAX);
shell(num,MAX);
insert(num,MAX);
t2=GetTickCount();
cout << t2-t1;

cout << "After sort:" << endl;
for(i=0; i<MAX; i++)
cout << num[i] << " ";
cout << endl;

cout << "end";
getch();
}

void bubble(int *x, int n)
{ register int i,j;
int tmp;
for(i=1;i<n;i++)
for(j=n-1;j>=i; j--)
if(x[j-1]>x[j])
{ tmp=x[j-1]; x[j-1]=x[j]; x[j]=tmp; }
}

void insert(int *x, int n)
{ register int i,j;
int tmp;
for(i=1;i<n;i++)
{ tmp=x[i];
for(j=i-1;j>=0 && tmp<x[j]; j--)
x[j+1]=x[j];
x[j+1]=tmp;
}
}
void shell(int *x, int n)
{ register int i,j,gap,k;
int xx;
char a[5]={9,5,3,2,1};
for(k=0;k<5;k++)
{ gap=a[k];
for(i=gap;i<n;i++)
{ xx=x[i];
for(j=i-gap; xx<x[j] && j>=0; j=j-gap)
x[j+gap]=x[j];
x[j+gap]=xx;
}
}
}





переписал программу сортировки в следующем виде...
вылетают непонятные ошибки.. может кто нибудь разъяснить?

comichero92
05.04.2010, 11:44
#include <iostream.h>
#include <conio.h>
#include <dos.h>
#define MAX 20
void bubble(int *x,int n);
void shell(int *x,int n);
void insert(int *x,int n);
void main()
{ int num[MAX],i;
int t1,t2;
cout << "Before sort:\n";
for(i=0; i<MAX; i++)
{ num[i]=random(MAX);
cout << num[i] << " ";
}
cout << endl;
t1=GetTickCount();
bubble(num,MAX);
shell(num,MAX);
insert(num,MAX);
t2=GetTickCount();
cout << t2-t1;

cout << "After sort:" << endl;
for(i=0; i<MAX; i++)
cout << num[i] << " ";
cout << endl;

cout << "end";
getch();
}

void bubble(int *x, int n)
{ register int i,j;
int tmp;
for(i=1;i<n;i++)
for(j=n-1;j>=i; j--)
if(x[j-1]>x[j])
{ tmp=x[j-1]; x[j-1]=x[j]; x[j]=tmp; }
}

void insert(int *x, int n)
{ register int i,j;
int tmp;
for(i=1;i<n;i++)
{ tmp=x[i];
for(j=i-1;j>=0 && tmp<x[j]; j--)
x[j+1]=x[j];
x[j+1]=tmp;
}
}
void shell(int *x, int n)
{ register int i,j,gap,k;
int xx;
char a[5]={9,5,3,2,1};
for(k=0;k<5;k++)
{ gap=a[k];
for(i=gap;i<n;i++)
{ xx=x[i];
for(j=i-gap; xx<x[j] && j>=0; j=j-gap)
x[j+gap]=x[j];
x[j+gap]=xx;
}
}
}





переписал программу сортировки в следующем виде...
вылетают непонятные ошибки.. может кто нибудь разъяснить?

Если ты используешь Visual Studio то для твоей программы следующие хедеры:

#include <windows.h> // для работы GetTickCount(); (Windows API function)
#include <conio.h>
#include <iostream>

использовать пространство имен
using namespace std;

я не помню что нужно подключить чтобы заработал random() :( почему бы не использовать rand() и srand() ? :)

Lewis Carroll
05.04.2010, 17:47
пишу на борланде..) windows.h не хочет подключаться %)
может как то по-другому можно посчитать время выполнения алгоритма?

comichero92
05.04.2010, 18:25
функция difftime не подойдет?

#include <time.h>
#include <stdio.h>

int main(void)
{
time_t start, end;
volatile long unsigned t;

start = time(NULL);
for(t = 0; t < 5000000; t++);
end = time(NULL);

printf("Цикл использовал %f секунд. \n", difftime(end, start));

return 0;
}

Linkus
05.04.2010, 18:32
windows.h не хочет подключаться %)

это как понять?? 0_о

что происходит то вообще?

Lewis Carroll
05.04.2010, 20:48
о спасибо, попробую эту конструкцию )

Voz7Var
07.04.2010, 19:43
Всем салют :) У меня домашка. 3 задачи сделал (потенциально :D), а одно нет.

Нужно на C.

Задачу проще было пртскринуть :D

http://www.imageup.ru/img114/zad322702.jpg

Спасибо за внимание!

ben1991
07.04.2010, 22:40
Привет всем...можете написать следующие программы на АСМ...Я незнаю алгоритма построения программ...
1)Составить ассемблер-программу кодирования и раскодирования произвольной текстовой строки по произвольной кодирующей таблице. Вывести на экран исходную, колированную и раскодированную строки.
2)Сбросить биты 1, 4, 5, 10, 12, 15 заданного слова ОП.
3)Через сдвиг быстро умножить заданное слово ОП на 30.
4)Копировать из заданного массива слов в другой массив только отрицательные числа.
5)Создайте произвольное собственное прерывание и занесите его в любое место таблицы векторов прерывания.

seowayder
07.04.2010, 23:58
Помогите сделать пожалуйста - очень срочно! Заранее благодарен!

Создать *.exe программу, которая размещает в памяти данных компьютера, операнды, которые заданы вариантом.
Входные операнды А, В, С, D, E, F с индексом u считать без знаковыми и длиной в байтах, согласно с индексу, с индексом fs считать с подвижной запятой одинарной точности (32 биты), с индексом fd считать с подвижной запятой двойной точности (64 биты), с индексом fe считать с подвижной запятой расширенной точности (80 бит); операнды А, В, С разместить в сегменте DATA с произвольным выравниванием сегмента, D, E, F разместить в сегменте DATA1 с выравниванием сегмента BYTE, WORD, DWORD, PARA, PAGE (см. [5]). Кроме этого операнд А является массивом из 3-ох элементов.При объявленные назначить операндам начальные значения, используя все возможны системы счета. К – константа, длина которой определяется значением(согласно варианта), а значение задано в шестнадцатиричном формате. Для ее описания следует использовать директиву EQU. Задать одну метку в произвольном месте сегмента данных. В одном из сегментов на выбор расположить переменную Message db 'Sorokroy',13,10,'$', где 'Sorokroy' – фамилия преподавателя, которую вывести на экран.

http://clip2net.com/clip/m0/1270670451-clip-3kb.png?nocache=1

NTFF
08.04.2010, 00:42
Помогите с реализацией двухсвязного списка в паскале

может есть вариант как-то преобразовать существующий список если это возможно то вот код:

Если нет то вот условие
Разработать справочник пассажирских поездов с полями: номер поезда, станции отправления и назначения, время в дороге, категория поезду. Реализовать подпрограммы поиска: 1) по станциям отправления и назначения, 2) по категории поезду.

program Records;
uses
crt, strings;
const
max = 100;
type

Ttrain = record
Otpravlenie : string[40];
Pribitie : string[40];
Category : string[10];
Time : string[10];
Number : string[10];
end;

Ttrains = array [1..max] of Ttrain;


procedure SngWindow(x1,y1,x2,y2,tc,c : byte);
begin
window(x1,y1,x2,y2);
textbackground(c); textcolor(tc);
clrscr;
end;


procedure DblWindow(x1,y1,x2,y2,tcolor, c1, c2 : byte);
begin
window(x1,y1,x2,y2);
textbackground(c1);
clrscr;
window(x1+1,y1+1,x2-1,y2-1);
textbackground(c2);
textcolor(tcolor);
clrscr;
end;


function Menu : byte;
var
punkt : byte;
er : integer;
s : string;
begin

SngWindow(1,1,80,25,WHITE,BLACK);

SngWindow(1,6,80,25,WHITE,BLUE);

repeat

DblWindow(1,1,80,5,YELLOW,MAGENTA,BLUE);
writeln;
write(' 1.ADD 2.DELETE 3.PRINT 4.SEARCH 5.EXIT');
readln(s);
val(s,punkt,er);
until (er=0) and (punkt>=1) and (punkt<=5);
Menu := punkt;
end;

function SubMenu : byte;
var
punkt : byte;
er : integer;
s : string;
begin

SngWindow(1,1,80,25,WHITE,BLACK);
SngWindow(1,6,80,25,WHITE,BLUE);
repeat

DblWindow(1,1,80,5,YELLOW,MAGENTA,BLUE);
writeln;
write(' 1.Otpravlenie 2.Pribitie 3.Number 4.Exit');
readln(s);
val(s,punkt,er);
until (er=0) and (punkt>=1) and (punkt<=4);
SubMenu := punkt;
end;

procedure AddRecord(var mas : Ttrains; var n : byte; size : byte);
var
s : String;
er : integer;
begin

if (n+1 <= size) then
begin
inc(n);

write('Point of otpravlenie =>'); readln(mas[n].Otpravlenie);
write('Point of pribitie =>'); readln(mas[n].Pribitie);
write('Category of train =>'); readln(mas[n].Category);
write('Time in the way =>'); readln(mas[n].Time);
write('Number of train =>'); readln(mas[n].number);

writeln('Record is saving....');
end
else writeln('ERROR record is lost');
end;

procedure PrintRecord(var mas : Ttrains; i : integer);
begin
write(i:3);
with mas[i] do
begin
write(Otpravlenie:23); write(Pribitie:20);
write(Category:10); write(Time:10);
write(Number:12);
writeln;
end;
end;

procedure Print(var mas : Ttrains; n : integer);
var
i : integer;
begin
writeln('#':3,'Otpravlenie':23,'Pribitie':20,'Cate gory':10,'Time':10,'Number':12);
for i:=1 to n do
PrintRecord(mas,i);
end;

procedure DelRecordByotpr(var mas : Ttrains; var n : byte; botpr : string);
var
i,j : integer;
begin
writeln('#':3,'Otpravlenie':23,'Pribitie':20,'Cate gory':10,'Time':10,'Number':12);
for i:=1 to n do
begin
with mas[i] do

if (Otpravlenie = botpr) then
begin
PrintRecord(mas,i);

for j:=i+1 to n do
mas[j-1] := mas[j];
dec(n);
end;
end;
end;

procedure FindByotpr(var mas : Ttrains; n : integer; botpravlenie : string);
var
i : integer;
begin
writeln('#':3,'Otpravlenie':23,'Pribitie':20,'Cate gory':10,'Time':10,'Number':12);

for i:=1 to n do
with mas[i] do

if otpravlenie=botpravlenie then PrintRecord(mas,i);
end;

procedure FindByCat(var mas : Ttrains; n : integer; ba, bst : string);
var
i : integer;
begin
writeln('#':3,'Otpravlenie':23,'Pribitie':20,'Cate gory':10,'Time':10,'Number':12);

for i:=1 to n do
with mas[i] do

if (pribitie=ba) and (Category=bst) then PrintRecord(mas,i);
end;

procedure FindBynum(var mas : Ttrains; n : integer; bnumber : string);
var
i : integer;
begin writeln('#':3,'Otpravlenie':23,'Pribitie':20,'Cate gory':10,'Time':10,'Number':12);

for i:=1 to n do
with mas[i] do

if number=bnumber then PrintRecord(mas,i);
end;

var
b : Ttrains;
n : byte;
punkt : byte;
subpunkt : byte;
trainotprav,
a,
st : string;
y : string;
s : string;
er : integer;
begin
n := 0;
SngWindow(1,1,80,25,WHITE,BLACK);
repeat
punkt:= Menu;
case (punkt) of
1:begin
SngWindow(1,6,80,25,WHITE,BLUE);
writeln(' ADD train');
AddRecord(b,n,max);
readkey;
end;
2:begin
SngWindow(1,6,80,25,WHITE,BLUE);
writeln(' Delete by otpravlenie');

write('Otpravlenie =>');
readln(trainotprav);

DelRecordByotpr(b,n,trainotprav);
readkey;
end;
3:begin
SngWindow(1,6,80,25,WHITE,BLUE);
writeln(' Catalog of trains');
Print(b,n);
readkey;
end;
4:begin
repeat
subpunkt := SubMenu;
case (subpunkt) of
1:begin
SngWindow(1,6,80,25,WHITE,BLUE);
writeln(' Train by otpravlenie ');
write('Otpravlenie =>');
readln(trainotprav);
findbyotpr(b,n,trainotprav);
readkey;
end;
2:begin
SngWindow(1,6,80,25,WHITE,BLUE);
writeln(' Train by pribitie and category ');

write('Pribitie =>');
readln(a);

write('Category =>');
readln(st);
findByCat(b,n,a,st);
readkey;
end;
3:begin
SngWindow(1,6,80,25,WHITE,BLUE);
writeln(' Train by number ');
write('number =>');
readln(y);
findbynum(b,n,y);
readkey;
end;
end;
until (subpunkt = 4);
end;
end;
until (punkt = 5);
SngWindow(1,1,80,25,WHITE,BLACK);
end.

Robobit
08.04.2010, 01:22
Здравствуйте!
Пожалуйста помогите выполнить лабораторную работу на любом языке...
Тема:Программирование алгоритмов циклической структуры
1:
http://s58.radikal.ru/i161/1004/67/fc54c46ae0fe.png
2:
http://i017.radikal.ru/1004/39/ce73693fe11a.jpg

cel1697i845
08.04.2010, 07:38
Robobit (1)
Если правильно я понял, то вот:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Robobit_1
{
class Program
{
static void Main(string[] args)
{
double Summa = 0;
for (double i = 1; i <= 20; i++)
{
Summa += Math.Pow(i + 2, 2);
}
Console.WriteLine(Summa);
Console.ReadKey();
}
}
}


Deposit Files (http://depositfiles.com/files/ypl0rtvaw)
RapidShare (http://rapidshare.com/files/373288468/Robobit_1.rar.html)
letitbit (http://letitbit.net/download/35628.35bfcbc4a9fe0873ace663aee/Robobit_1.rar.html)

mozgpanic
08.04.2010, 09:28
Robobit
Немного быдлокода на питоне
1:

S, i = 0, 0
while(i<20):
i=i+1
S=S+(i+2)*(i+2)
print (S)

2:

import math
a=3.5
X=0.5
t=0
x=0
def factorial(z):
if z == 0:
return 1
else:
return z * factorial(z - 1)
n=input('Введите n:')
n=float(n)
while(x<=40):
t=t+math.pow(math.log(a),n)*math.pow(X,n)/factorial(n)
Y=math.pow(a,x)
x=x+1
S=1+t
print ("S=",S)
print ("Y=",Y)
if (S>=Y):
print("S>=Y")
else:
print ("S<Y")

P.S. на счет второго могу и ошибаться :rolleyes:

a_pap
08.04.2010, 10:50
Может кто-нибудь помочь написать или найти готовый код предельно простого арканоида на Delphi? Без наворотов, требуется только выпадение бонусов и счетчик очков.

Nition
08.04.2010, 15:26
Ребят помогите сделать задачку

Создать класс для обработки комплексных чисел, полями которого будет являться действительные и мнимые части числа, а методами – сложение, вычитание, умножение, деление двух комплексных чисел, а также нахождение модуля комплексного числа и вывода результатов на экран.
Исходные данные и результаты расчетов хранить:
- в текстовых файлах;
- в бинарных файлах.

KrabKN
08.04.2010, 19:45
помогите програма нехочет подсчитівать средний бал

файл fia.h
struct grupa
{
char FIO[101];
int vik;
float bal;
char gru[20];
};
extern "C" void vvod(grupa &spisok);
extern "C" void vivod(grupa spisok);
extern "C" void asa (grupa spisok);


файл fia.cpp
#include<iostream.h>
#include<string.h>
#include<conio.h>
#include "fia.h"
void vvod(grupa &spisok)
{
cout << "Vvedite predlogaemie paramitri ";
cout << "\nFIO: "; cin>>spisok.FIO;
cout << "Vik: "; cin>>spisok.vik;
cout << "Sredni bal: "; cin>>spisok.bal;
cout << "Grupa: "; cin>>spisok.gru;
}
void vivod(grupa spisok)
{
cout << "FIO: " <<spisok.FIO<<"\n";
cout << "Vik: " <<spisok.vik<<"\n";
cout << "Sredni bal: " <<spisok.bal<<"\n";
cout << "Grupa: " <<spisok.gru<<"\n\n";
}
void asa(grupa spisok)
{
char a[10];
float m=0;
int n=0;
cout<<"\nVvedite nomer grupy\n"; cin>>a;
for(int i=0;i<3;i++)
{
if(a==spisok.gru)
{
n++;
m=n+spisok.bal;
}
}
m=m/n;
cout<<"Bal= "<<m;
}


#include<iostream.h>
#include<string.h>
#include<conio.h>
#include "fia.cpp"
void main()
{
int vibor;
grupa spisok[4];

grupa* kn = (grupa*)spisok;
kn++;

while(vibor!=4)
{
cout<<"\nSpisok grupy\n1.Sozdanie spiska grupy\n2.Prosmotr grupy\n3.Pods4et srednego bala\n4.Exit\n";
cin>>vibor;

switch(vibor)
{
case 1:
for(int i=0;i<3;i++)
vvod(spisok[i]);break;

case 2:
for(int i=0;i<3;i++)
vivod(spisok[i]);break;
case 3:
for(int i=0;i<3;i++)
asa(spisok[i]);break;
case 4:
cout<<"\nbye =)";break;
default:cout<<"\n Sorry Error!!!\n";break;
}
}
getch();
}

Porrter
09.04.2010, 19:43
Спроектировать и разработать программу позволяющую создавать процессы и
управлять уже созданными. Программа должна обладать следующим набором
возможностей:
В интерактивном режиме запускать указанные процессы.
Уничтожать указанный процесс (уничтожаться могут только процессы запущенные
программой). Уничтожаемый процесс указывается либо его описателем, либо
выбирается в интерактивном режиме.
Показать список всех процессов (а также своих копий) запущенных программой.
Программа должна знать о всех своих запушенных копиях.
Программа должна уметь обмениваться со своими копиями списками порождённых
процессов.
При закрытии программы она должна уничтожить все порождённые ею процессы.

Примечания:
Новый процесс запускается функцией CreateProcess и уничтожается функцией
TerminateProcess.
Запускаемый процесс указывается именем своего исполняемого файла.
Для обмена данными между копиями программы можно использовать переменные
окружения. Для работы с переменными окружения используются следующие функции:
GetEnvironmentVariable, SetEnvironmentVariable.
В случае реализации программы в консольном варианте для обработки попыток
закрытия программы необходимо использовать функцию SetConsoleCtrlHandle.
Описание необходимых функций можно посмотреть в MSDN Library.
Пользовательский интерфейс может быть реализован в любом варианте (текстовый,
графический).

ntldr
09.04.2010, 19:50
Внезапно - http://forum.antichat.ru/forum57.html

-slim-
10.04.2010, 13:47
Нарисовать на форме график функции y=sin(x) в диапазоне x=0 - 180 с шагом 10 Обсчитать площадь под графиком и вывести на форму в компонент Tedit. Высота формы 1.5, длина формы 3.

Попрошу Вас, с пояснениями в комментариях. Очень надо.

Delphi

-Straniks-
10.04.2010, 13:55
Помогите написать задачи на Си. Компилятор gcc от Linux (Ubuntu 8.04)
1. Найти номер максимального элемента таблицы a[1...10]
2. Найти наименьшее однозначное число x удовлетворяющее условию x*x*x-x*x=n
2. Составить программу, подсчитывающую число удалений в каждой команде при игре в хоккей. После каждого
удаления выводить на экран фамилию хоккеиста, время, на которое он удаляется с поля, и суммарное число
удалений в каждой команде. После окончания игры выдать итоговое сообщение.
3. Информация о хранящихся на складе товарах состоит из: 1) инвентаризационного номера; 2) наименование
товара; 3) количества в штуках; 4) цены; 5) даты поставки. Напишите структуру, описывающую эту
информацию на языке Си.
4. Написать программу формирования базы данных результатов соревнований по тяжелой атлетике. Запись
содержит: стартовый номер, фамилию, имя, отчество, название спортивного клуба, результаты по двум
упражнения (рывок, толчок), номер занятого места. Последнее поле заполнить, определив занятое место по
сумме результатов в двух упражнениях.

буду очень благодарен кто решит...

IgrikX
11.04.2010, 15:14
Вот не могу никак сделать задание, уже несколько дней.
Задание.
Вариант задания реализовать в виде функции, использующей для работы со строкой только указатели и операции вида *p++, p++ и т.д. Если функция возвращает строку или ее фрагмент, то это также необходимо сделать через указатель.
Функция находит в строке пары одинаковых фрагментов и возвращает указатель на первый. С помощью функции найти все пары одинаковых фрагментов.
Что я смог сделать))


#include <stdio.h>
#include <string.h>
#include <conio.h>

const int minlen = 3;

char *find(char *p, char *q, int len){
for(;*p!='\0';p++){
int i;
for(i=0;(q[i]!='\0')&&(q[i]==p[i]);i++)
if(i==len)
return p;
}
return NULL;
}

void allfind(char *str){
for(int len=minlen; len<strlen(str); len++){
for(int i=0; i<strlen(str)-len; i++){
char *sub = find(str, str+len+i, len);
if(sub!=NULL)
puts(sub);
}
}
}

int main()
{
clrscr();
allfind("aaabbbcccaaa");
getch();
return 0;
}


Кто поможет, +1))

X-FRITS
11.04.2010, 17:41
Помогите сделать лаб.работу на Делфи:

http://i070.radikal.ru/1004/ce/755c9b3e10e9.jpg

EndLeSSDre@M
12.04.2010, 12:55
Помогите сделать лаб.работу на Делфи:

http://i070.radikal.ru/1004/ce/755c9b3e10e9.jpg


эм.. я бы сделал если бы на русском написано было... а так ниче не понятно :(

Colkru
12.04.2010, 15:38
Реализация "SOCKS-клиента". Реализовать общение компьютера, находящегося за firewall с сетью "Интернет" с помощью socks-сервера по протоколу TCP/IP. Общение должно происходить с помощью подмены разделяемой библиотеки со стандартными вызовами типа connect, bind и др.

Нужно сделать на СИ под Linux. Помогите кто, чем может))))

Colkru
12.04.2010, 16:03
Вот не могу никак сделать задание, уже несколько дней.
Задание.
Вариант задания реализовать в виде функции, использующей для работы со строкой только указатели и операции вида *p++, p++ и т.д. Если функция возвращает строку или ее фрагмент, то это также необходимо сделать через указатель.
Функция находит в строке пары одинаковых фрагментов и возвращает указатель на первый. С помощью функции найти все пары одинаковых фрагментов.
Что я смог сделать))
Кто поможет, +1))

Вот (http://www.reshaem.net/download.php?type=decision&id=5531) Нашел похоже то задание)

7on
12.04.2010, 17:33
помогите решить систему в VB 6

{ V+sin*V; V<-1
U={arcsin(0.7*V+0.26); -1<=V<=0.5
{ (V+(cos*V+(e^V)^0.5; 0.5<V

X-FRITS
12.04.2010, 18:56
эм.. я бы сделал если бы на русском написано было... а так ниче не понятно :(
http://s40.radikal.ru/i090/1004/73/04982d978c26.jpg

EndLeSSDre@M
12.04.2010, 19:10
помогите решить систему в VB 6

{ V+sin*V; V<-1
U={arcsin(0.7*V+0.26); -1<=V<=0.5
{ (V+(cos*V+(e^V)^0.5; 0.5<V

Пользуйся! :)

Private Sub Command1_Click()
v=val(textbox1.text)
e= 2.718
select case true
case v<-1
u=v+sin(v)
case v>=-1 and v<=0.5
u=arcsin(0.7*v+0.26)
case v>0.5
u=v+(cos(v)+(e^v)^0.5)
end select
msgbox("U= "+u)
end sub

2X-FRITS щас посмотрю что можно сделать

Life7
12.04.2010, 20:00
Задача следующего плана:

составить программу, сравнивающую три вида сортировок (любые сортировки т.е. быстрая, пузырьком и т. д. все годятся) и выдающую в результате сколько времени было затрачено на сортировку массива данных. (желательный размер массива ~100 кб, чтобы разница во времени была очевидной)

язык C/C++

заранее благодарен.

7on
13.04.2010, 16:40
С этим помогите ище плиз и все!!!
http://i.piccy.info/i4/d6/ff/cafbda320f9f3240041c58564e28.jpeg (http://piccy.info/view/195968ce8549c6db8bccec1e7eb71e1f/)
хелп плз)))

TPAXTOP
13.04.2010, 20:07
Помогите, ПОЖАЛУЙСТА!!!Нужно решить на Паскале...СРОЧНО!!!

Задали задачу, которая состоит из 3 частей, первую сделал, дальше не получается...=(

1.Вычислить элементы матрицы по формуле:
формула; значение i,j. (http://upload.com.ua/get/901498408/)

Это пока работает, а вот то, что дальше - нет(помогите!плз!

2. Сформировать вектор Х(х1,х2,х3..х5), каждый элемент которого определяется как сумма элементов диагоналей матрицы(матрица, которая получилась с задания номер 1)

3. Вычислить значение G за формулой (http://upload.com.ua/get/901498416/)

Нужно чтоб все было сделано как одна программа.
ПОМОГИИИИТЕ....(
1. Вычислить элементы квадратной матрицы (и=1, 2,..5; j = 1,2,..5) по заданной формуле (http://upload.com.ua/get/901498408/)
2. Используя элементы матрицы вычислить элементы вектора (и =1, 2,..5). Сформировать вектор Х(х1,х2,х3..х5), каждый элемент которого определяется как сумма элементов диагоналей матрицы.
3. Вычислить значение функции G согласно формулы (http://upload.com.ua/get/901498416/)

Knipex
13.04.2010, 20:30
Помогите пожалуйста написанием задачи в С++ =) Необходимо: реализовать сортировку массива линейным выбором с обменом. буду очень благодарен. ;)

EndLeSSDre@M
13.04.2010, 22:11
ПОМОГИИИИТЕ....(

так ну вот первый пункт!

uses crt;
const n=5;
var a:array[1..n,1..n] of real;
i,j:integer;

begin
clrscr;
writeln('Massiv');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=exp(ln(2)*(i-j))*abs(i-4)+3*ln(3)/ln(abs(sqr(i)-exp(ln(j)*3)));
write(a[i,j]:4);
end;
writeln;
end;

объясни по подробнее про 2! я не совсем понимаю...чем х1 будет отличаться от х2 например...

TPAXTOP
13.04.2010, 22:51
так ну вот первый пункт!

uses crt;
const n=5;
var a:array[1..n,1..n] of real;
i,j:integer;

begin
clrscr;
writeln('Massiv');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=exp(ln(2)*(i-j))*abs(i-4)+3*ln(3)/ln(abs(sqr(i)-exp(ln(j)*3)));
write(a[i,j]:4);
end;
writeln;
end;

объясни по подробнее про 2! я не совсем понимаю...чем х1 будет отличаться от х2 например...
Помогите, ПОЖАЛУЙСТА!!!Нужно решить на Паскале...СРОЧНО!!!

Задали задачу, которая состоит из 3 частей, первую сделал, дальше не получается...=(

1.Вычислить элементы матрицы по формуле:
формула; значение i,j. (http://upload.com.ua/get/901498408/)

Это пока работает, а вот то, что дальше - нет(помогите!плз!

2. Сформировать вектор Х(х1,х2,х3..х5), каждый элемент которого определяется как сумма элементов диагоналей матрицы(матрица, которая получилась с задания номер 1)

3. Вычислить значение G за формулой (http://upload.com.ua/get/901498416/)

Нужно чтоб все было сделано как одна программа.
ПОМОГИИИИТЕ....(
1. Вычислить элементы квадратной матрицы (и=1, 2,..5; j = 1,2,..5) по заданной формуле (http://upload.com.ua/get/901498408/)
2. Используя элементы матрицы вычислить элементы вектора (и =1, 2,..5). Сформировать вектор Х(х1,х2,х3..х5), каждый элемент которого определяется как сумма элементов диагоналей матрицы.
3. Вычислить значение функции G согласно формулы (http://upload.com.ua/get/901498416/)

EndLeSSDre@M
13.04.2010, 23:16
в общем вот код как я понял задачу:

uses crt;
const n=5;
var
a:array[1..n,1..n] of real;
x:array[1..n] of real;
i,j,k:integer;
sum,g,p:real;
begin
clrscr;
k:=1;
writeln('Massiv');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=exp(ln(2)*(i-j))*abs(i-4)+3*ln(3)/ln(abs(sqr(i)-exp(ln(j)*3)));
write(a[i,j]:4);
sum:=sum+a[i,j];
end;
x[i]:=sum;
sum:=0;
writeln;
end;

write('X(');
for i:=1 to n do
begin
write(x[i],', ');
end;
write(')');
writeln;


for i:=1 to n do
begin

for k:=1 to i do
begin
for j:=1 to k do
begin
k:=k*j;
end;
p:=x[k]/k;
k:=1;
end;

sum:=sum+(sin(x[i])-p);
end;
G:=ln(2)/ln(abs(sum));
writeln('G= ',g);
readln;
end.

на работоспособность не проверял... возможны не большие недочеты.... писал в блокноте, лень проверять... если что пиши в ЛС! Пожалуйста ;)

сорь что без процедур и се такое... просто не люблю я их

да и еще, я знаю только 2 диагонали матрицы... главную и побочную, где еще взять 3 не понял... тупо сделал как сумма строк..

TPAXTOP
14.04.2010, 00:44
в общем вот код как я понял задачу:

uses crt;
const n=5;
var
a:array[1..n,1..n] of real;
x:array[1..n] of real;
i,j,k:integer;
sum,g,p:real;
begin
clrscr;
k:=1;
writeln('Massiv');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=exp(ln(2)*(i-j))*abs(i-4)+3*ln(3)/ln(abs(sqr(i)-exp(ln(j)*3)));
write(a[i,j]:4);
sum:=sum+a[i,j];
end;
x[i]:=sum;
sum:=0;
writeln;
end;

write('X(');
for i:=1 to n do
begin
write(x[i],', ');
end;
write(')');
writeln;


for i:=1 to n do
begin

for k:=1 to i do
begin
for j:=1 to k do
begin
k:=k*j;
end;
p:=x[k]/k;
k:=1;
end;

sum:=sum+(sin(x[i])-p);
end;
G:=ln(2)/ln(abs(sum));
writeln('G= ',g);
readln;
end.

на работоспособность не проверял... возможны не большие недочеты.... писал в блокноте, лень проверять... если что пиши в ЛС! Пожалуйста ;)

сорь что без процедур и се такое... просто не люблю я их

да и еще, я знаю только 2 диагонали матрицы... главную и побочную, где еще взять 3 не понял... тупо сделал как сумма строк..
СПАСИБИЩЕ!!!!!!!!!
ОГРОМНОЕ!!!!ОЧЕНЬ ВЫРУЧИЛ!!!
Компиль проходит, но Ран пишет: "Error 207: Invalid floating point operation", а Дебаг-> Аутпат: "Masiv Runtime error 207 at 0356:0006"

EndLeSSDre@M
14.04.2010, 01:14
вот держи! откомпилил! все робит!

uses crt;
const n=5;
var
a:array[1..n,1..n] of real;
x:array[1..n] of real;
i,j,k,l:integer;
sum,g,p:real;
begin
clrscr;
l:=1;
writeln('Massiv');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=exp(ln(2)*(i-j))*abs(i-4)+3*ln(3)/ln(abs(sqr(i)+exp(ln(j)*3)));
write(a[i,j]:4:1);
sum:=sum+a[i,j];
end;
x[i]:=sum;
sum:=0;
writeln;
end;
writeln;
write('X(');
for i:=1 to n do
begin
write(x[i]:1:1,';');
end;
write(')');
writeln;


for i:=1 to n do
begin
for k:=1 to i do
begin
for j:=1 to k do
begin
l:=l*j;
end;
p:=x[k]/l;
l:=1;
end;
sum:=sum+sin(x[i])-p;
end;
g:=ln(2)/ln(abs(sum));
writeln;
writeln('G= ',g:3:3);
readln;
end.

X-FRITS
14.04.2010, 01:24
2EndLeSSDre@M Можешь мою сделать??

EndLeSSDre@M
14.04.2010, 01:27
2EndLeSSDre@M Можешь мою сделать??

сорри я просто даже не представляю как это делать((( перебирал, перебирал так ниче и не на думал... ну еще помучаюсь! как только, сразу отпишусь

TPAXTOP
14.04.2010, 07:50
вот держи! откомпилил! все робит!

uses crt;
const n=5;
var
a:array[1..n,1..n] of real;
x:array[1..n] of real;
i,j,k,l:integer;
sum,g,p:real;
begin
clrscr;
l:=1;
writeln('Massiv');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=exp(ln(2)*(i-j))*abs(i-4)+3*ln(3)/ln(abs(sqr(i)+exp(ln(j)*3)));
write(a[i,j]:4:1);
sum:=sum+a[i,j];
end;
x[i]:=sum;
sum:=0;
writeln;
end;
writeln;
write('X(');
for i:=1 to n do
begin
write(x[i]:1:1,';');
end;
write(')');
writeln;


for i:=1 to n do
begin
for k:=1 to i do
begin
for j:=1 to k do
begin
l:=l*j;
end;
p:=x[k]/l;
l:=1;
end;
sum:=sum+sin(x[i])-p;
end;
g:=ln(2)/ln(abs(sum));
writeln;
writeln('G= ',g:3:3);
readln;
end.

СПАСИБИЩЕ, но у меня та же проблема пишет, это наверное Паскаль мой глючит..

7on
14.04.2010, 09:01
С этим помогите ище плиз и все!!!
http://i.piccy.info/i4/d6/ff/cafbda320f9f3240041c58564e28.jpeg (http://piccy.info/view/195968ce8549c6db8bccec1e7eb71e1f/)

хелп плиз

Scorpion_007
14.04.2010, 17:58
Информация о хранящихся на складе товарах состоит из: 1) инвентаризационного номера; 2) наименование
товара; 3) количества в штуках; 4) цены; 5) даты поставки. Напишите структуру, описывающую эту
информацию на языке Си.

Помогите пожалуйста, с меня +

TPAXTOP
14.04.2010, 18:43
1. Вычислить элементы квадратной матрицы (и=1, 2,..5; j = 1,2,..5) по заданной формуле ( http://s08.radikal.ru/i181/1004/75/0947a0e8e65c.jpg)
2. Используя элементы матрицы вычислить элементы вектора (и =1, 2,..5). Сформировать вектор Х(х1,х2,х3..х5), каждый элемент которого определяется как квадрат наибольшего элемента строки матрицы.
3. Вычислить значение функции G согласно формулы ( http://s004.radikal.ru/i205/1004/7b/5e02e234d64b.jpg)

EndLeSSDre@M
14.04.2010, 19:08
1. Вычислить элементы квадратной матрицы (и=1, 2,..5; j = 1,2,..5) по заданной формуле ( http://s08.radikal.ru/i181/1004/75/0947a0e8e65c.jpg)
2. Используя элементы матрицы вычислить элементы вектора (и =1, 2,..5). Сформировать вектор Х(х1,х2,х3..х5), каждый элемент которого определяется как квадрат наибольшего элемента строки матрицы.
3. Вычислить значение функции G согласно формулы ( http://s004.radikal.ru/i205/1004/7b/5e02e234d64b.jpg)


хоть я и пизд*ц злой щас... но все таки сделал:

uses crt;
const n=5;
var
a:array[1..n,1..n] of real;
x:array[1..n] of real;
i,j,k:integer;
max,sum,g,p:real;
begin
clrscr;
p:=1;
writeln('Massiv');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=exp(ln(2)*(i-j))+sin(i*j)/exp(ln(i+j)*3);
write(a[i,j]:4:1);
end;

sum:=0;
writeln;
end;

for i:=1 to n do
begin
max:=a[i,1];
for j:=1 to n do
begin
if a[i,j]>max then max:=a[i,j];
end;
x[i]:=sqr(max);
end;

writeln;
write('X(');
for i:=1 to n do
begin
write(x[i]:1:1,';');
end;
write(')');
writeln;


for i:=1 to n do
begin
for k:=1 to i do
begin
sum:=ln(2)/ln(abs(x[k]))
end;
sum:=sum+x[i];
p:=p*sum;
end;
g:=p;
writeln;
writeln('G= ',g:3:3);
readln;
end.

>>serhio<<
14.04.2010, 21:32
Помогите пожалуйста реализовать на Си!
Дан динамический двумерный массив удалить из него строки в которых есть ноль.

TPAXTOP
14.04.2010, 23:42
хоть я и пизд*ц злой щас... но все таки сделал:

uses crt;
const n=5;
var
a:array[1..n,1..n] of real;
x:array[1..n] of real;
i,j,k:integer;
max,sum,g,p:real;
begin
clrscr;
p:=1;
writeln('Massiv');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=exp(ln(2)*(i-j))+sin(i*j)/exp(ln(i+j)*3);
write(a[i,j]:4:1);
end;

sum:=0;
writeln;
end;

for i:=1 to n do
begin
max:=a[i,1];
for j:=1 to n do
begin
if a[i,j]>max then max:=a[i,j];
end;
x[i]:=sqr(max);
end;

writeln;
write('X(');
for i:=1 to n do
begin
write(x[i]:1:1,';');
end;
write(')');
writeln;


for i:=1 to n do
begin
for k:=1 to i do
begin
sum:=ln(2)/ln(abs(x[k]))
end;
sum:=sum+x[i];
p:=p*sum;
end;
g:=p;
writeln;
writeln('G= ',g:3:3);
readln;
end.

Ты спаситель прям, СПАСИБО!!!

criptic
14.04.2010, 23:56
Ребят, пока еще не приходилось иметь дело с Си. помогите разобрать код пошагово.

Могу понять, что там что-то с деревьями, обход или что-то такое..




#include "stdafx.h"
#include <stdlib.h>
#include <string.h>
#define count 4

struct Tree
{
char *key;
Tree**child;
};
Tree*Root;
void Vsglad(Tree*);
void View_tree(Tree*,int);

int _tmain(int argc, _TCHAR* argv[])
{

Root = new Tree;
Root->key = new char[50];
Root->child = new Tree*[count];
for(int i=0;i<count;i++)Root->child[i]=NULL;
printf("Please enter root of the tree");
gets(Root->key);
Vsglad(Root);


return 0;
}
void Vsglad(Tree*ptr)
{
Tree*ptrN;
char mychoice;
int i;
do
{
system("cls");
system("echo 1 Посмотрите...");
system("echo 2 Пройдемте...");
system("echo 3 Добавьте...");
system("echo 4 Назад...");
system("echo q Выходите...");
View_tree(Root,1);
scanf("%c",&mychoice);
switch(mychoice)
{
case '1':
puts(ptr->key);
system("pause");
continue;
case '2':
system("echo Введите номер ветви");
printf("\n0<i<%d ",count);
scanf("%d",&i);
if(ptr->child[i]==NULL)
{
system("Тут ничего нет");
system("pause");
continue;
}
Vsglad(ptr->child[i]);
continue;
case '3':

char New_word[50];
int link;
printf("Please enter a new element of tree: ");
scanf("%s",New_word);

printf("number of link ");
scanf("%d",&link);
ptrN = new Tree;
ptrN->key = new char[50];
ptrN->child = new Tree*[count];
strcpy(ptrN->key,New_word);// ptrN->key = New_word
for(int i=0;i<count;i++)ptrN->child[i]=NULL;
ptr->child[link] = ptrN;
continue;
case '4':return;
case 'q':exit(1);
}
}while(mychoice!='q');

}
void View_tree(Tree*ptr,int glubina)
{
int n=0,i;
printf("%s\n",ptr->key);
while(1)
{
if(n==count)
{
n--;
if(ptr->child[n]==NULL)
{
return;
}
else
{

for(i=0;i<glubina;i++)printf("---");
printf("%d ",n);
glubina++;
View_tree(ptr->child[n],glubina);
glubina--;
n++;
}
return;
}
if(ptr->child[n]!=NULL)
{

for(i=0;i<glubina;i++)printf("---");
printf("%d ",n);
glubina++;
View_tree(ptr->child[n],glubina);
glubina--;
n++;

}else
{
n++;
continue;
}
}
}

7on
15.04.2010, 09:59
С этим помогите ище плиз и все!!!
http://i.piccy.info/i4/d6/ff/cafbda320f9f3240041c58564e28.jpeg (http://piccy.info/view/195968ce8549c6db8bccec1e7eb71e1f/)

VISUAL BASSIC 6 !!!

EndLeSSDre@M
15.04.2010, 12:25
VISUAL BASSIC 6 !!!


блин ты распиши нормально, а то ниче не понятно че там нужно делать... откуда че берется... че за Z вообще, сначала формула для него, потом еще пишешь Где Z =... нормально кароче все распиши по пунктикам, тогда сделаю

Fox_NICK
15.04.2010, 15:20
Подготовить данные об абитуриентах, поступаю¬щих в техникум. Информацию о каждом абитуриенте оформить в виде записи, содержащей следующие поля:
1. Фамилия, имя, отчество.
2. Год рождения.
3. Год окончания школы.
4. Оценки в аттестате.
5. Признак - нуждается ли в общежитии.
6. Оценки вступительных экзаменов.
Разработать программу записи подготовленных данных во внешний файл и программу обработки со¬зданного внешнего файла.
I. Удалить из внешнего файла все записи, удовлет¬воряющие условию, заданному в варианте, и распеча¬тать информацию, оставшуюся в файле.
II. Добавить N записей в начало(конец) внешнего файла и распечатать записи полученного файла соглас¬но конкретному варианту.

I. Из внешнего файла, содержащего исходные данные, удалить записи, соответствующие:
7. Абитуриентам, не получившим ни одной оценки 5.

Распечатать полученный файл

С меня +++++

ntldr
15.04.2010, 15:24
http://forum.antichat.ru/forum57.html

EndLeSSDre@M
15.04.2010, 18:17
27on

это 2 задача S=

uses crt;
var
writeln('Vvedite n');
readln(n);
writeln('Vvedite l');
readln(l);
for j:=n to l do
begin
s:=s+(exp(ln(j+5)*3)/(exp(ln(j)*3))-sqr(j)-j-2);
end;
writeln('S=',s);
readln;
end.

Это 3 задача F=
но тут определись че за фигня у тебя в задании написано! сумма откуда до куда...

uses crt;
begin
f:=1;
writeln('Vvedite n');
readln(n);
writeln('Vvedite l');
readln(l);
for j:=n to l do
begin
f:=f*(n/((n-2)*(n-3)));
end;
writeln('F=',f);
readln;
end.

перепишешь первую нормально, и ее сделаю!

7on
15.04.2010, 20:38
Там просто после обчислить идет Z большое, а потом везде маленькое!!!

EndLeSSDre@M
15.04.2010, 20:54
Там просто после обчислить идет Z большое, а потом везде маленькое!!!

Если я тебя правильно понял то вот:

uses crt;
begin
writeln('Vvedite n');
readln(n);
writeln('Vvedite k');
readln(k);

for c:=1 to n do
begin
z:=z+c;
end;

z:=1/n*z;

for c:=1 to n do
begin
l:=l+sqr(z-c)/k;
end;

z:=sqrt(l);

writeln('Z=',z);
readln;
end.

DJeFRY_RASH
16.04.2010, 15:05
Ребята, нужна помощь !

Напишите программу, которая рисует вращающийся относительно вертикальной оси контур правильной N-угольной призмы
начальное положение призмы и её размеры устанавливается пользователем протяжкой указателя по рисунку

Помогите просто нарисовать n - угольную призму на канве, код вращения я думаю смогу сам написать :)

7on
16.04.2010, 15:46
EndLeSSDre@M, спасибо большое!!!

n1ghtstalker
16.04.2010, 16:31
Ребята, нужна помощь !

Напишите программу, которая рисует вращающийся относительно вертикальной оси контур правильной N-угольной призмы
начальное положение призмы и её размеры устанавливается пользователем протяжкой указателя по рисунку

Помогите просто нарисовать n - угольную призму на канве, код вращения я думаю смогу сам написать :)

а яп?

DJeFRY_RASH
16.04.2010, 16:46
а яп?

Простите, что ? :)

Ins3t
16.04.2010, 16:57
Язык программирования, на котором нужно реализовать решение задачи.

fluffylion
16.04.2010, 16:57
яп - язык программирования

DJeFRY_RASH
16.04.2010, 17:44
Понял.
Delphi, сорри, забыл указать.

Nition
17.04.2010, 13:29
EndLeSSDre@M Мою не поможешь мне?

EndLeSSDre@M
17.04.2010, 13:37
EndLeSSDre@M Мою не поможешь мне?

ты хоть задание выложи! если смогу то конечно помогу

mozgpanic
17.04.2010, 18:00
Nition, лови

import re
class komplex:#собственно сам класс и функции для работы с комплексными числами
def __init__(self):
a,b,c,d=0,0,0,0
def summa(self, a,b,c,d): #ф-я суммы
s_d=a+c
s_m=b+d
return s_d, s_m, "i"
def raznost(self, a,b,c,d): #ф-я разности
r_d=a-c
r_m=c-d
return r_d, r_m,"i"
def umnozhenie(self, a,b,c,d): # умножение (Кэп?! =) )
u_d=a*c-b*d
u_m=b*c+a*d
return u_d, u_m,"i"
def delenie(self, a,b,c,d): # деление
d_d=(a*c+b*d)/(c*c+d*d)
d_m=(b*c-a*d)/(c*c+d*d)
return d_d, d_m,"i"
def modul(self,a,b): # модуль
if a<0:
a=a*(-1)
if b<0:
b=b*(-1)
return a,b,"i"
classinstance=komplex()
def vesh(line):#функция вычленяющая вещественную часть
match = re.search("^-?[0-9]*|(?<=[+-])",line)
return int(match.group(0))
def mnim(line):#функция вычленяющая мнимую часть
match2 = re.search("(?<=[+-])\d+(?=i)",line)
return int(match2.group(0))
f1=open("input.txt", "r") #файл содержащий числа
f2=open("output.txt", "w") # файл в кот. выводим результат
line1=f1.readline() #читаем первое число, записанное в первой строке
a=vesh(line1) #a - вещественная часть первого числа
b=mnim(line1) #b - мнимая часть второго числа
line2=f1.readline()
c=vesh(line2)
d=mnim(line2)
main=classinstance.summa(a,b,c,d) # вызовем например ф-ю сложения [подставить название необходимой самостоятельно]
if main[1]>=0: # если мнимая часть положительна запишем в файл с +
f2.write(str(main[0]))
f2.write("+")
f2.write(str(main[1]))
f2.write(str(main[2]))
print(main[0],"+",main[1],main[2])
else: # если нет - минус поставиться сам
f2.write(str(main[0]))
f2.write(str(main[1]))
f2.write(str(main[2]))
print(main[0],main[1],main[2])
#а вот так вызывается модуль
#main=classinstance.modul(a,b)
#f2.write(str(main[0]))
#f2.write("+")
#f2.write(str(main[1]))
#f2.write(str(main[2]))
f1.close() # закрываем файлы
f2.close()

P.S. работу с бинарными файлами не реализовал - не было времени гуглить, а сходу не вспомню как, но думаю там не будет сильно сложно...
P.P.S. ах да, забыл добавить, файл input.txt формируется в 2 строки: в первой строке указываем первое число, а во второй - второе, и, что немаловажно, без пробелов.
P.P.P.S. не знаю, бывают ли целая и мнимая части комплексного числа дробными, но у меня они целые. (редактируем регулярные выражения для дробного).

Robobit
18.04.2010, 10:40
Здравствуйте!
Пожалуйста помогите выполнить лабораторную работу на любом языке.
Тема:Массивы
Цел работы - программирование задач на одномерные и двумерные массивы

Задан одномерный массив a из n элементов.
A:Найти номер первого минимального элемента среди элементов, больших T1 И расположенных правее первого элемента, равного T2.

Задана матрица размерностью n*m.
B:Проверить, все ли строки матрицы упорядоченны по убыванию. Если нет, найти первую неупорядоченную строку и упорядоченную.

_hobbit_
18.04.2010, 11:15
Здраствуйте!
Пожалуйста, помогите написать програму в Делфи, емуляция калькулятора,
со всеми стандартными функциями (память, корень, +,-,*,/, ну и остальные).

n1ghtstalker
18.04.2010, 11:43
Здраствуйте!
Пожалуйста, помогите написать програму в Делфи, емуляция калькулятора,
со всеми стандартными функциями (память, корень, +,-,*,/, ну и остальные).

*ROFL* что сложно 3 edit и несколько кнопок сделатЬ?

вставляешь в первые 2 строки числа потом на кнопку + и их складываешь в третью. ну и очищение одну сделай.

_hobbit_
18.04.2010, 13:09
*ROFL* что сложно 3 edit и несколько кнопок сделать?

вставляешь в первые 2 строки числа потом на кнопку + и их складываешь в третью. ну и очищение одну сделай.
ну это я сделаю, а что с памятью, и нужно работать не с двумя числами а с многими.
Калк должен быть похож на стандартный из Винды, а это уже сложнее.
Помогите! :)

Miredo
18.04.2010, 13:15
Здравствуйте!
Пожалуйста помогите выполнить лабораторную работу на любом языке.
Тема:Массивы
Цел работы - программирование задач на одномерные и двумерные массивы

Задан одномерный массив a из n элементов.
A:Найти номер первого минимального элемента среди элементов, больших T1 И расположенных правее первого элемента, равного T2.

Задана матрица размерностью n*m.
B:Проверить, все ли строки матрицы упорядоченны по убыванию. Если нет, найти первую неупорядоченную строку и упорядоченную.

От на C# сделал пункт А


using System;

namespace LabA
{
class ProgramA
{
/*
Задан одномерный массив a из n элементов.
A:Найти номер первого минимального элемента среди элементов, больших T1 И расположенных правее первого элемента, равного T2.
*/
const int n = 20;
int[] a;

public ProgramA()
{
int i = 0;
int T1 = 5;
int T2 = 3;
Random rnd = new Random();
a = new int[n];
for (i = 0; i < n; i++)
a[i] = rnd.Next(1, 50); // Заполняем массив случайными числами

Show(a);
FindNumberOfFirstMinimal(a, T1, T2);
}
void FindNumberOfFirstMinimal(int[] a, int T1, int T2)
{
int[] mas = new int[n]; // элементы больше T1
int number = 0;
int min;
min = a[0];
for (int j = T2; j < n; j++)
{
if (a[j] > T1)
{
mas[j] = a[j];
if (min >= mas[j] && mas[j] != 0)
{
min = mas[j];
number = j;
}
}
}

Console.WriteLine("\nMin = {0} number = {1}", min, number + 1);
Console.WriteLine("\nЭлементы больше T1");
Show(mas);
}
void Show(int[] a)
{
foreach (int dig in a)
Console.Write(dig + " ");
}
}
class MainProgram
{
static void Main(string[] args)
{
ProgramA pa = new ProgramA();
Console.ReadLine();
}
}
}

BELbIY
19.04.2010, 13:33
Простенькая задачка:
Написать программу на языке Pascal для упорядочивания 3-х чисел в порядке возрастания.

as3kpwnz
19.04.2010, 15:30
Привет.

Одномерный массив, c++.
Задан массив действительных чисел. Определить, сколько раз меняется знак в данной послдовательности чисел, запомнить номера позиций, в которых происходит смена знака.

Двумерный массив, c++.
Дана прямоугольная матрица.Найти строку с наибольшей и наименьшей суммой элементов. Вывести на печать найденные строки и суммы их элементов.

as3kpwnz
19.04.2010, 15:33
Здраствуйте!
Пожалуйста, помогите написать програму в Делфи, емуляция калькулятора,
со всеми стандартными функциями (память, корень, +,-,*,/, ну и остальные).
Пиши почту, вечером вышлю.

as3kpwnz
19.04.2010, 15:35
Составить функцию вычисления среднего значения элементов вещественного одномерного массива. Использовать эту функцию в основной программе, определяющей в матрице номер строки с наибольшим средним значением.

с++

BELbIY
19.04.2010, 17:10
Парни, помогите реально задачку решить:

Написать программу на языке Pascal для упорядочивания 3-х чисел в порядке возрастания.

Nition
19.04.2010, 20:41
#include <iostream.h>

class drob
{
int a,c;
int b,d;
int x,y;
public:
void sum ();
void vich ();
void mult ();
void divd ();
drob();
void disp();
};
drob::drob()
{
cout<<"enter the constructor"<<endl;
cout<<"enter a"<<endl;
cin>>a;
cout<<"enter b"<<endl;
cin>>b;
cout<<"enter c"<<endl;
cin>>c;
cout<<"enter d"<<endl;
cin>>d;
cout<<"exit constructor"<<endl;
}
void drob::sum ()
{
if (b==d)
{
y=b;
x=a+c;
}
else
{
y=b*d;
x=(a*d)+(c*b);
}
}
void drob::vich()
{
if (b==d)
{
y=b;
x=a-c;
}
else
{
y=b*d;
x=(a*d)-(c*b);
}
}
void drob::mult()
{
x=a*c;
y=b*d;

}
void drob::divd()
{
x=a*d;
y=b*c;
}
void drob::disp()
{
cout<<"result is"<<x<<"/"<<y<<endl;
}


int main ()
{
int m;
drob v1;
cout<<"choose the action +(1), -(2), *(3), /(4)"<<endl;
cin>>m;

if (m==1)
v1.sum();
else
if (m==2)
v1.vich();
else
if (m==3)
v1.mult();
else
if (m==4)
v1.divd();
v1.disp();

return 0;
}
Помогите организовать вывод
в текстовых файлы
в бинарных файлы

Очень большое спасибо за прошлую лабу, но блин Надо было это сделать на С++

Задача 2. Создать класс для обработки комплексных чисел, полями которого будет являться действительные и мнимые части числа, а методами – сложение, вычитание, умножение, деление двух комплексных чисел, а также нахождение модуля комплексного числа и вывода результатов на экран.
Исходные данные и результаты расчетов хранить:
- в текстовых файлах;
- в бинарных файлах.

mozgpanic Огромное спасибо, ты даже не представляеш как ты меня спас!

Besi
19.04.2010, 21:16
Как отделить действительную и мнимую часть символьного выражения?

expand((a+b*I)^7);
a^7+7*I*a^6*b-21*a^5*b^2-35*I*a^4*b^3+35*a^3*b^4+21*I*a^2*b^5-7*a*b^6-I*b^7

evalc(%);
a^7-21*a^5*b^2+35*a^3*b^4-7*a*b^6+I*(7*a^6*b-35*a^4*b^3+21*a^2*b^5-b^7)

как ето реализовать-пока незнаю нада подумать но у самогу курсовик горит такчто прости помочь немогу)

cisar
20.04.2010, 18:28
парни помогите!!!!!!

Вот нужно паскаль решить :
Задано действительны число r и массив A (n), n <= 200. Разработать программу, которая подсчитывает сколько точек с координатами (а1, а2), (a3, a4), ...,( a2n-1a2n)
принадлежат круговые радиуса r с центром в начале координат.

dpbid
20.04.2010, 18:54
Нужна помощь:
суть программы :
Разработать программу, которая демонстрирует управление структурами данных типа «очередь», элементы которого занимают 12 кб. Операции, выполняемые над очередью:
1 проверить, очередь пуста/не пуста;
2 добавить элемент в хвост очереди;
3 удалить элемент из головы очереди;
4 просмотреть голову очереди;
5 продублировать голову очереди.
Воспользоваться механизмом управления разделами виртуальной
памятью.

Все пункты реализовал, за исключение 5ого. парни, кто знаком с ВП, помогите пожалуйста продублировать голову очереди

вот мой код по дублированию, но он выдает ошибку аксес виолейшн

void Duplicate_Head()
{
if (och_size == 0)
{
printf ("Error! Ochered is empty.");
return;
}
dup=VirtualAlloc(NULL, REGIONS_LIMIT*region_size, MEM_RESERVE, PAGE_EXECUTE_READWRITE);
if (dup == NULL )
{
printf ("Error! VirtualAlloc reserve failed with error code of %ld\n", GetLastError ());
return;
}
memcpy(dup, base_addr, REGIONS_LIMIT*region_size);
cout << "Head is duplicated." << endl;
}


сама программа тут http://slil.ru/28969893

ktotoOmg
20.04.2010, 19:41
Суть: написать программу(или 2 отдельные) для шифрования и дешифрования (замечу, именно дешифрования, т.е. не зная ключ получить исходный текст, попросту говоря - взлом) используя алгоритм XOR.

Собственно для самого шифрования написал, ничего сложного нету. Проблемы возникли именно со второй частью - дешифровкой. Из всего материала в интернете подобрал вот такой вот способ взлома:

1. Определим длину ключа с помощью процедуры, известной как подсчет совпадений. Применим операцию XOR к шифротексту, используя в качестве ключа сам шифротекст с различными смещениями, и подсчитаем совпадающие байты. Если величина смещения кратна длине ключа, то совпадет свыше 6 процентов байтов. Если нет, то будут совпадать меньше чем 0.4 процента (считая, что обычный ASCII текст кодируется случайным ключом, для других типов открытых текстов числа будут другими). Это называется показателем совпадений. Минимальное смещение от одного значения, кратного длине ключа, к другому и есть длина ключа.
2. Сместим шифротекст на эту длину и проведем операцию XOR для смещенного и оригинального шифротекстов. Результатом операции будет удаления ключа и получение открытого текста, подвергнутого операции XOR с самим собой, смещенным на длину ключа. Так как в английском языке на один байт приходится 1.3 бита действительной информации, существующая значительная избыточность позволяет определить способ шифрования.

Как получить исходный текст, кроме как полным перебором ключей (если известна его длина) - так и не понял. Условием задания допускается знание какой алфавит был использован в тексте и ключе (для простоты можно брать английский).

Кто имеет какие-либо домыслы по этому поводу либо же какие-то наброски кода - прошу помочь.

dark-klin
20.04.2010, 20:19
Ребята срочно помогите решить задание из лабороторки в Pascal ABC с использованием оператора while.

1 заданиеhttp://ipicture.ru/upload/100420/KbymdZWn6W.jpg

2 задание http://ipicture.ru/upload/100420/60vVby20TQ.jpg

Для связи стучать в ICQ 701355

cisar
20.04.2010, 20:30
парни помогите!!!!!!

Вот нужно паскаль решить :
Задано действительны число r и массив A (n), n <= 200. Разработать программу, которая подсчитывает сколько точек с координатами (а1, а2), (a3, a4), ...,( a2n-1a2n)
принадлежат круговые радиуса r с центром в начале координат.
ну же плис решете!!!!! пиздец как надо :mad: :mad: :mad: :confused:

[underwater]
20.04.2010, 20:33
Ребят, помогите пожалуйста.
http://img51.imageshack.us/img51/4821/2004e.gif
Написать модуль на языке Ассемблера для обработки строк (в виде процедуры или макроса).
Написать на языке Ассемблера программу корректного ввода исходных данных.

Shkiper2009
21.04.2010, 08:20
люди помогите сижу на зачете надо вот программы в паскале написать 2шт написать или лучше 3 я вообще неразбераюсь как их сделать выручайте дорогие античатовцы. ааааа время мало осталось....



Задание 1.

Опишите тип запись с именем tovar и полями: наименование (string[10]), цена (real), количество (integer). Составьте программу, позволяющую задать данные о товаре с клавиатуры (не менее 3-х наименований) и вывести его стоимость на экран.

Задание 2.

Создайте программу, позволяющую организовать массив записей, содержащий данные о товарах на складе и заполните этот массив с клавиатуры (не менее 6-ти наименований). Расчет стоимости каждого товара представьте в виде функции, результаты выведите на экран. Реализуйте возможность сохранения результатов работы программы во внешний файл, записав в него наименование, цену, количество. Подсчитайте общую стоимость всех товаров, выведите результат на экран.

Задание 3.

Создайте программу, частично автоматизирую работу на складе. Программа должна добавлять во внешний файл, данные о товаре, задаваемые с клавиатуры (наименование, цена, количество), выводить данные обо всех товарах, имеющихся на складе, а также их стоимость, посчитывать общую стоимость всех товаров.

_K2_
21.04.2010, 20:48
Помогите!!!


Извените что на Укр. Языке!


2) цілочисельний масив утворюється з n випадкових чисел. потрібно:знайти суму додатніх елементів які розміщені між першим та останім від`ємним елементом и


3) цілочисельна матриця n-го порядку утворюється з випадкових чисел. визначити найбільший елемент матриці і розташувати його у верхньому куті матриці

Serbies
22.04.2010, 11:33
_K2_ плз напиши чуть более понятно а то некоторые слова не могу осмыслить такие как випадкових и тп. И укажи язык программирования

Neykl
22.04.2010, 12:00
Добрый день! Помогите сделать программу по C++, сам не могу!!!!!!!!!!!!!!!!!!!!!

Задание-

8. Структура содержит следующие поля:
• ФИО пациента;
• Диагноз;
• Дата операции;
• Сколько времени осталось до операции: количество полных дней, часов. Это вычисляемое поле: текущая дата – введенная ранее дата операции.
Сделать не менее 10 записей.
По окончании ввода данных отсортировать пациентов по актуальности подготовки к операции.
Вывести на экран отсортированную структуру. Выделить другим цветом пациентов, у которых операция состоится в ближайшие 3 дня. Отдельно показать – выделить другим цветом - информацию о пациентах, которых уже прооперировали .

вот что получилось:

#include <vcl.h>
#pragma hdrstop

//---------------------------------------------------------------------------

#pragma hdrstop

//---------------------------------------------------------------------------

#include <stdio.h>
#include <conio.h>
#include <dos.h>
void main(void)
{
//Описание массива с изображением меню
char *reg[4]={ " 1)New Patient ",
" 2)Edit list of patients ",
" 3)Delete list of patients ",
" 4)Complete list "};
char kod;
int k=0; //k – номер режима
window(33,11,60,18); //Организация окна
textbackground(7);
textcolor(9);
clrscr();
gotoxy(9,2);
cprintf(" MENU ");//Вывод заглавия меню
//Выделение выбранной строки фоном и цветом
kod=0;
while (kod!=13)
{
for(int i=0;i<4;i++)
{
if (i==k) {
textbackground(9);
textcolor(3);
}
else {
textbackground(7);
textcolor(4);
}
gotoxy(1,i+4);
cprintf(reg[i]); //Вывод строк меню
}
kod=getch(); //Считывание символа
//Анализ нажатия клавиш <>, <>
if (kod==72) if (k>0) k--; else k=3;
if (kod==80) if (k<3) k++; else k=0;
}
window(1,1,80,25); //Переход к полному экрану
textbackground(0); //На черном фоне
textcolor(9); //синие буквы
clrscr();
gotoxy(33,15);
cprintf(" choose %d",k+1);
getch();
textmode(4);
clrscr();
}

Dhsus
22.04.2010, 17:10
Ребята, а вы решаете лабораторные с MathCad?

sveta11115
22.04.2010, 19:15
Помогите, пожалуйста, написать программу на С++:
Создать текстовый файл.
В нем отсортировать слова по длине

Idainet
23.04.2010, 01:06
Помогите, пожалуйста, написать программу на С++:
Создать текстовый файл.
В нем отсортировать слова по длине

А сами слова откуда брать?

sveta11115
23.04.2010, 01:36
создать файл и заполнить любыми словами в этой же программе

saransko_o
23.04.2010, 14:31
как на языке С можно реализовать вычисления чисел фибоначчи до 5000?

Katya.sx
23.04.2010, 15:36
как на языке С можно реализовать вычисления чисел фибоначчи до 5000?

Ряд Фибоначчи хорошо описан в книге "С++ за 21 день".

#include <iostream.h>
int s=0;
int fib (int n);

int main()
{

int n, answer;
cout << "Enter number to find: ";
cin >> n;

cout << "\n\n";

answer = fib(n);

cout << answer << " is the " << n << "th Fibonacci number\n";
cout << "\n" <<s <<"\n";
return 0;
}

int fib (int n)
{
cout << "Processing fib(" << n << ")... ";
s++;
if (n < 3 )
{
cout << "Return 1!\n";
return (1);
}
else
{
cout << "Call fib(" << n-2 << ") and fib(" << n-1 << ").\n";
return (fib(n-2) + fib (n-1));
}

saransko_o
23.04.2010, 18:20
да я не знаю c++, мне именно на C надо..

Idainet
24.04.2010, 19:25
как на языке С можно реализовать вычисления чисел фибоначчи до 5000?

# include <stdio.h>

int main(){

int M[500] = {1,1};
int i;

for (i = 0; M[i] < 5001; ++i)
{
printf ("%d - %d\n", i+1, M[i]);
M[i+2] = M[i+1] + M[i];
}

return 0;
}

gisTy
24.04.2010, 19:42
как на языке С можно реализовать вычисления чисел фибоначчи до 5000?как-то так, только тут первые 80, потому что дальше у меня нехорошо получется#include<stdio.h>

int main()
{
double a = 1.0, b = 1.0, i;

printf("%.0f\n%.0f\n", a, b);
for(i = 0; i< 40; i++)
{
printf("%.0f\n", a+b);
a+=b;
printf("%.0f\n", a+b);
b+=a;
}
return 0;
}

Ins3t
24.04.2010, 23:28
Ряд Фибоначчи хорошо описан в книге "С++ за 21 день".

#include <iostream.h>
int s=0;
int fib (int n);

int main()
{

int n, answer;
cout << "Enter number to find: ";
cin >> n;

cout << "\n\n";

answer = fib(n);

cout << answer << " is the " << n << "th Fibonacci number\n";
cout << "\n" <<s <<"\n";
return 0;
}

int fib (int n)
{
cout << "Processing fib(" << n << ")... ";
s++;
if (n < 3 )
{
cout << "Return 1!\n";
return (1);
}
else
{
cout << "Call fib(" << n-2 << ") and fib(" << n-1 << ").\n";
return (fib(n-2) + fib (n-1));
}

Все очень рады, что вы читали о рекурсии в книге "С++ за 21 день", но ваш, а точнее, пример автора этой книги не сосчитает ряд чисел Фибоначчи до 5000.

2saransko_o, поищите в гугле по запросу "Длинная арифметика".

Ss[x]dD
25.04.2010, 11:18
Рисуем график в Chart - Delphi.

Вот у меня такой примерчик: нужно построить график, используя значения x, y - из СтрингГрида. График у меня построился, но теперь мне нужно, чтобы ось ОХ как бы была выделенной, а она у меня ничем не выделяется.

И еще 1 вопрос: в Chart`е есть такая функция, чтобы график рисовался не весь сразу, а с неким интервалом, допустим 1 точка за 1 сек?

Вот код:

procedure TForm1.Button2Click(Sender: TObject);
var i,j:longint;
begin
Series1.Clear;
for i:=1 to StringGrid1.RowCount-1 do
Series1.AddXY(StrToFloat(StringGrid1.Cells[0,i]),
StrToFloat(StringGrid1.Cells[1,i]),
'',clGreen);
Chart1.Title.Text.Clear;
end;

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
if CheckBox1.Checked=true then Series1.Pointer.Visible:=true
else Series1.Pointer.Visible:=false;
end;

DJeFRY_RASH
25.04.2010, 16:27
Народ, помогите в Delphi на канве нарисовать относительно вертикальной оси, n - угольную призму ! :)
Заранее спасибо !

Ditol
25.04.2010, 22:03
выручите плиз)) в четеверг лаба будет, делаю дома заранее, чтобы долгов небыло и чтобы во всем самому разбираться... но тут пропустил пару занятий по уважительной причине и не особо понял матерьял по указателям в СИ, поэтому прошу помощи.

вобщем, лаба про функции и про указатели.

задание такое:
написать программу сортировки массива строк, ввод данных сортировку и вывод результатво оформить в виде функциий.
использовать указатели.
вариант ** : расположить строки по возрастанию количества цифр в строках.
то что я написал <помощь и состоит в том чтобы исправить этот бред до рабочего состояния>




#include <stdio.h>
#pragma hdrstop
#include <stdlib.h>
#include <string.h>
#include <conio.h>
#pragma argsused

int in (char *str, int i)
{
printf ("\n Enter %d string", i);
gets(str);
return (str);
}
void out (char *str)
{
printf ("\n String %s", str);
}
void main ()
{
char *s[10], *p;
int i, j, k[10], m=0, str[10], l;
for(i=0; i<10; i++)
{
s[i]=(char *) malloc (80);
str[i]=in(s[i], i);
}
/*
k - массив в котором будут собранны количества цифр в строке, т.е. к[6]=5 значит что в строке нумбер шесть встречалось 5 цифр. идея в том чтобы потом при помощи этого массива переменять указатели s[i] в соответствии масиву К НЕ трогая сами строки.
*/
for(i=0; j<10; i++)
{
k[i]=0;
}
for (i = 0; i <= 9; i++)
{
l=strlen(str);
for(j=0; j<l; j++)
{
if(str[i][j]>='0' && str[i][j]<='9')
{
k[i]=k[i]+1;
}
}
}
for (i = 9; i>0; --i)
{
for( j=0; j<10; j++)
{
if (k[j]>k[j+1])
{
m=s[i];
s[i]=s[j];
s[j]=m ;
}
}
}
printf("\n Sort. mass");
for (i=0; i<10; i++)
{
out(s[i]);
free(s[i]);
}
getch();
}

dark-klin
26.04.2010, 21:27
Всем доброго дня и снова задача на Pascal ABC:

http://ipicture.ru/upload/100426/5k5ym4nqUd.jpg

Задание содержит задачи, которые сводятся к нахождению суммы или произведения некоторого количества слагаемых

Вычислить приближенное значение бесконечной суммы с заданной степенью точности E=0.1, 0.2, 0.01, 0.001 для получения суммы членов ряда следует использовать реккурентную формулу для получения следующего члена ряда через предыдущий. Считать, что заданная степень точности достигнута, если общий член ряда по модулю станет меньше Е.

Задачу решить в двух вариантах, а именно с использованием оператора цикла с предусловием (while) и оператора с постусловием (repeat).

admiral73
28.04.2010, 23:43
доброго времени суток, помогите плз с задачами:
1.Вставить нулевую строку и нулевой столбец перед строками и столбцами, где находятся минимальные элементы.
2.Поменять местами каждые две строки массива.
3.Удалите строки, содержащие более одного максимального элемента, а затем столбцы, сумма элементов которых равна заданному числу. Если такого столбца или строки нет, то вывести сообщение об этом.
4.Удалите строки, содержащие ноль, а затем столбцы, в которых только отрицательные элементы.Если такого столбца или строки нет, то вывести сообщение об этом.

meisterr
29.04.2010, 00:47
Pascal

определить каких элементов в массиве больше положительных отрицательных или нулевых

EndLeSSDre@M
29.04.2010, 01:07
Pascal

определить каких элементов в массиве больше положительных отрицательных или нулевых

uses crt;
var
p,o,n,i:integer;
begin
clrscr;
for i:=1 to n do
begin
if a[i]>0 then p:=p+1;
if a[i]<0 then o:=o+1;
if a[i]=0 then n:=n+1;
end;
if (p>o) and (p>n) then writeln('bolshe polojatelnih');
if (o>p) and (o>n) then writeln('bolshe otricatelnih');
if (n>p) and (n>o) then writeln('bolshe nulevih');
readln;
end.

Bengl
29.04.2010, 16:54
Pascal

Условие: Ввести строку, найти все символы которые встречаются в словах либо только с четными, либо только с нечетными порядковыми номерами.

Пример: мама мыла раму поэтому снег выпал

буква Ы встречается только в четных словах 2 и 6. Значит она нам подходит.

аналогично буквы
Р (только в 3 нечетном слове)
Э (только в 4 четном слове)
С (только в 5 нечетном слове)
В (только в 6 четном слове)
Л (во 2 и 6 четных словах)
П (в 4 и 6 четных словах)
T (в 4 слове)
O (в 4 слове)

Значит программа должна вывести нам буквы Ы Р Э С В Л П Т O.

Задачу нужно решить с использованием множеств.

Ss[x]dD
29.04.2010, 21:06
Ребята, помогите создать цикл, чета голова совсем неработает )
Вобщем:

в едит1 вводим число - пусть будет 3
в едит2 нужно вывести числа через "," по этой формуле = 2^n (n-число которое вводим в едит1) т.е. должны получить такие числа в едит2: 2^0, 2^1, 2^2, 2^3.

Robobit
29.04.2010, 22:14
Здравствуйте!
Пожалуйста помогите выполнить лабораторную работу на любом языке.
Тема:Массивы
Цел работы - программирование задач на одномерные и двумерные массивы

Задана матрица размерностью n*m.
Проверить, все ли строки матрицы упорядоченны по убыванию. Если нет, найти первую неупорядоченную строку и упорядоченную.

EndLeSSDre@M
29.04.2010, 23:42
dD']Ребята, помогите создать цикл, чета голова совсем неработает )
Вобщем:

в едит1 вводим число - пусть будет 3
в едит2 нужно вывести числа через "," по этой формуле = 2^n (n-число которое вводим в едит1) т.е. должны получить такие числа в едит2: 2^0, 2^1, 2^2, 2^3.

procedure TForm1.Button1Click(Sender: TObject);
var n,s,i,k:integer;
t:string;
begin
n:=strtoint(edit1.text);
s:=1;
for i:=0 to n do
begin
for k:=1 to i do
begin
s:=s*2;
end;
t:=t+inttostr(s)+',';
s:=1;
end;
edit2.text:=t;

end;

end.

Здравствуйте!
Пожалуйста помогите выполнить лабораторную работу на любом языке.
Тема:Массивы
Цел работы - программирование задач на одномерные и двумерные массивы

Задана матрица размерностью n*m.
Проверить, все ли строки матрицы упорядоченны по убыванию. Если нет, найти первую неупорядоченную строку и упорядоченную.

В каком смысле упорядочены строки по убыванию??? Может элементы в строках? не?

criptic
29.04.2010, 23:52
Ребят, нужно вкратце объяснить задачку по теории автоматов.

Составить цепочку из символов а и b , длина которых кратна трем.
Как этО?

Robobit
30.04.2010, 10:17
EndLeSSDre@M
Извиняюсь, я ошибся.
Проверить, все ли строки матрицы упорядоченны по убыванию. Если нет, найти первую неупорядоченную строку и упорядочить.