HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 08.04.2010, 00:42
NTFF
Новичок
Регистрация: 09.12.2009
Сообщений: 23
С нами: 8643320

Репутация: 0
По умолчанию

Помогите с реализацией двухсвязного списка в паскале

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

Если нет то вот условие
Разработать справочник пассажирских поездов с полями: номер поезда, станции отправления и назначения, время в дороге, категория поезду. Реализовать подпрограммы поиска: 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.
 
Ответить с цитированием

Программирование алгоритмов циклической структуры
  #2  
Старый 08.04.2010, 01:22
Robobit
Новичок
Регистрация: 16.03.2010
Сообщений: 6
С нами: 8503630

Репутация: 0
По умолчанию Программирование алгоритмов циклической структуры

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

2:
 
Ответить с цитированием

C#
  #3  
Старый 08.04.2010, 07:38
cel1697i845
Постоянный
Регистрация: 22.11.2008
Сообщений: 395
С нами: 9192803

Репутация: 776
По умолчанию C#

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
RapidShare
letitbit
 
Ответить с цитированием

Python
  #4  
Старый 08.04.2010, 09:28
mozgpanic
Новичок
Регистрация: 09.03.2010
Сообщений: 3
С нами: 8513454

Репутация: 3
Post Python

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. на счет второго могу и ошибаться

Последний раз редактировалось mozgpanic; 08.04.2010 в 13:09..
 
Ответить с цитированием

  #5  
Старый 08.04.2010, 19:45
KrabKN
Новичок
Регистрация: 22.01.2010
Сообщений: 25
С нами: 8580623

Репутация: 0
По умолчанию

помогите програма нехочет подсчитівать средний бал

файл 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();
}
 
Ответить с цитированием

Срочно нужно сделать задачку. Завтра сдавать.
  #6  
Старый 09.04.2010, 19:43
Porrter
Новичок
Регистрация: 24.08.2009
Сообщений: 17
С нами: 8796769

Репутация: -9
По умолчанию Срочно нужно сделать задачку. Завтра сдавать.

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

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

  #7  
Старый 09.04.2010, 19:50
ntldr
Постоянный
Регистрация: 04.12.2007
Сообщений: 424
С нами: 9702986

Репутация: 479
По умолчанию

Внезапно - http://forum.antichat.ru/forum57.html

Последний раз редактировалось ntldr; 09.04.2010 в 19:55..
 
Ответить с цитированием

  #8  
Старый 10.04.2010, 13:47
-slim-
Познающий
Регистрация: 25.05.2007
Сообщений: 56
С нами: 9980878

Репутация: 27
По умолчанию

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

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

Delphi
 
Ответить с цитированием

  #9  
Старый 10.04.2010, 13:55
-Straniks-
Познающий
Регистрация: 11.08.2009
Сообщений: 45
С нами: 8816079

Репутация: 44
По умолчанию

Помогите написать задачи на Си. Компилятор 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. Написать программу формирования базы данных результатов соревнований по тяжелой атлетике. Запись
содержит: стартовый номер, фамилию, имя, отчество, название спортивного клуба, результаты по двум
упражнения (рывок, толчок), номер занятого места. Последнее поле заполнить, определив занятое место по
сумме результатов в двух упражнениях.

буду очень благодарен кто решит...
 
Ответить с цитированием

  #10  
Старый 11.04.2010, 15:14
IgrikX
Познающий
Регистрация: 13.08.2009
Сообщений: 92
С нами: 8812922

Репутация: 1
По умолчанию

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

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

const int minlen 3;

char *find(char *pchar *qint 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=minlenlen<strlen(str); len++){
    for(
int i=0i<strlen(str)-leni++){
        
char *sub find(strstr+len+ilen);
        if(
sub!=NULL)
        
puts(sub);
    }
    }
}

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

Кто поможет, +1))
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Американским студентам запретили пользоваться Skype KPOT_f!nd Мировые новости. Обсуждения. 1 28.09.2006 03:47
Любителям квестов сюда!! FoX's Болталка 10 25.01.2005 20:42



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.