Форум программистов, компьютерный форум CyberForum.ru

Хочет знать и лабу сдать и все понять - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Определить находятся ли данные прямые в общем положении http://www.cyberforum.ru/cpp-beginners/thread17074.html
Просьба решить или хотя бы подсказать как можно начать решать такую "простенькую"задачу: Прямая на плоскости может быть задана уравнением ax+by+c=0,где a и b одновременно не равны нулю. Пусть имеется n прямых (n>=3) заданных целыми коэфициентами a1,b1,c1, a2,b2,c3, ... an,bn, cn. Определить находятся ли данные прямые в общем положении, т.е. никакие две из них не совпадают и не паралельны и...
C++ Помогите создать готовое приложение Возникла проблема с созданием готовой программы которую можно было бы запустить на другом компьютере на котором нет среды разработки. Помогите плиз.Программа написана на Билдере.Если брать Экзешник который получается в результате компиляции то он норм запускается и работает на моем компьютере. На другом он запускаеться, но 1-ю задачу выполняет некоректон, а при запуске 2-й вообще... http://www.cyberforum.ru/cpp-beginners/thread17073.html
C++ Найти количество неповторяющихся элементов массива
Помогите пожалуйста найти алгоритм, или код реализующий следующее: Имеется массив из n элементов(n вводится с клавиатуры), элементы массива задаются случайным образом главный вопрос найти количество неповторяющихся элементов массива(т.е. кол-во элементов встречающихся по 1 разу) вот мой код, но он считает не количество неповторяющихся элементов,а количество сравниваний # include <stdio.h> #...
Описание прикладных библиотек Borland C++5.02 Где его найти? C++
Народ помогите!!Где найти описание прикладных библиотек для Borland C++5.02??? И еще хотелось научиться их применять по назначению,но это второй этап. Есть програмка там требуются компоненты ,к примеру, TSoketClien и TServerClient. Я так понял: нужно найти и пристегнуть библиотеки с этими компонентами. А их нэт в инете. Че делать в таких случаях??КАк дальше измучать С++???
C++ Симметрический обход дерева http://www.cyberforum.ru/cpp-beginners/thread16694.html
Кто знает - симметрический обход дерева - это тоже самое что и сортировка? Получается так.
C++ Скопировать содержимое текстового файла, удалив в каждой строке слово номер N+1, если в слове N есть 4 Здравствуйте. Помогите, пожалуйста, в написании программы Скопировать содержимое текстового файла, удалив в каждой строке слово номер N+1, если в слове N есть 4. У меня пока получилось только: Скопировать содержимое текстового файла, удалив в каждой строке слово номер N #include <stdio.h> #include <stdlib.h> void del_n(char *pathFileInput, char *pathFileOutput, unsigned int *N) подробнее

Показать сообщение отдельно
Ежик
Сообщений: n/a
01.12.2008, 08:18     Хочет знать и лабу сдать и все понять
объясните что я тут сделал в пьяном бреду! Желательно про коментировать каждую строку программы.
Код
#include <conio.h>
#include <iostream.h>
#include <stdio.h>
#include <alloc.h>
 
struct value
{
int a;
value *b;
}
vl;
value *createelement(int tmpval)
{
     static unsigned int number1=0;
static value *p1first;
static value *p1temp,*p1next;
if (number1==0)
     {
p1first=new value;
        if (p1first==NULL)
{
            clrscr();
    return p1first;
}
     vl=*p1first;
             vl.a=tmpval;
vl.b=NULL;
*p1first=vl;
p1temp=p1first;
number1++;
}
             else
{
             p1next=new value;
if (p1next==NULL)
{
clrscr();
return p1first;
             }
vl=*p1temp;
vl.b=p1next;
*p1temp=vl;
     vl=*p1next;
             vl.a=tmpval;
vl.b=NULL;
             *p1next=vl;
p1temp=p1next;
number1++;
}
 
             return p1first;
             }
 
unsigned int counterelements(value *p1first)
{
unsigned int number=0;
if (p1first!=NULL)
{
     vl=*p1first;
number++;
while (vl.b!=NULL)
{
p1first=vl.b;
     vl=*p1first;
number++;
}
}
else number=0;
return number;
}
 
value *deleteelements(value *p1first)
{
value *p1del,*p2del;
unsigned int number;
number=counterelements(p1first);
                     if (p1first!=NULL)
{
vl=*p1first;
p1del=vl.b;
delete p1first;
for( unsigned int i=1;i<=number-1;i++)
             {
             vl=*p1del;
                                 p2del=vl.b;
             delete p1del;
             p1del=p2del;
             }
}
                     return NULL;
}
void rewriteelement(unsigned int number,int newvalue,value *p1first)
                 {
                 value *p1rewrite;
if (number!=0)
{
p1rewrite=p1first;
                 for(unsigned int i=0;i<=number-1;i++)
{
vl=*p1rewrite;
p1rewrite=vl.b;
}
                                     vl=*p1rewrite;
vl.a=newvalue;
*p1rewrite=vl;
 
}
else
{
vl=*p1first;
                     vl.a=newvalue;
*p1first=vl;
}
}
 
int readelement(unsigned int number,value *p1first)
{
value *p1read;
if (number!=0)
{
p1read=p1first;
for(unsigned int i=0;i<=number-1;i++)
{
                                     vl=*p1read;
p1read=vl.b;
}
vl=*p1read;
 
 
 
}
else
{
vl=*p1first;
}
return vl.a;
                 }
void sortirelements(value *p1first)
{
int max,max1;
unsigned int number=counterelements(p1first);
                 for(unsigned int i=0;i<=number-1;i++)
{
max=readelement(0,p1first);
for(unsigned int j=0;j<=number-2;j++)
{
if (max<readelement(j+1,p1first)) { max=readelement(j+1,p1first); }
else
{
                                                                                     rewriteelement(j,readelement(j+1,p1first),p1first);
rewriteelement(j+1,max,p1first);
}
}
 
 
}
clrscr();
for(unsigned i=0;i<=number-1;i++)
{
printf("A[ %u",i);
printf("]=%d",readelement(i,p1first));
printf("\n");
 
}
getch();
}
 
 
 
 
 
 
 
main()
{
value *p1first=NULL;
char q=0;
unsigned int number=0,numval;
int tval;
while (q!=27)
{
     clrscr();
     printf("1. Dobavit element v konteyner\n");
     printf("2. Poschitat kolichestvo elementov v konteynere\n");
     printf("3. Dostup k elementam massiva\n");
     printf("4. Udalit element iz konteynera\n");
printf("5. Sortirovka elementov v konteynere\n");
     printf("Esc - Exit \n");
     q=getch();
 
         if (q=='1') {
                 clrscr();
                 number=counterelements(p1first);
                 printf("Vvedite znachenie elementa massiva A[%d]=",number);
                  cin >> tval;
                 p1first=createelement(tval);
                 if (p1first==NULL) break;
     }
         if (q=='2') {
                 clrscr();
                 printf("Kolichestvo elementov v konteynere ravno %u ",counterelements(p1first));
                 getch();
                 clrscr();
}
if ((q=='3')&&(p1first!=NULL)) {
                 q=0;
             clrscr();
number=counterelements(p1first)-1;
do
                 {
                 printf("Vvedite nomer elementa ");
                 cin >> numval;
                 printf(" \n");
                 if (numval > number) printf("Element pod takim nomerom ne zadan\n");
                 }
                 while (numval> number);
                 printf("Element pod nomerom* A[%u",numval);
                 printf("] imeet znachenie %d",readelement(numval,p1first));
                 getch();
                 clrscr();
}
if ((q=='4')&&(p1first!=NULL))
             {
             p1first=deleteelements(p1first);
             }
if ((q=='5')&&(p1first!=NULL))
{
clrscr();
              sortirelements(p1first);
              }
     }
p1first=deleteelements(p1first);
return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 04:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru