ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #2071  
Старый 21.12.2009, 12:12
krypt3r
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме:
3660186

Репутация: 905


По умолчанию

1.1)
Код:
program laba35;

const
  a : array [0..6] of real = (1, 3.5, 4, -0.8, 1.9, 5, 13);
  c = 2;
  d = 10;

var
  i : integer;
  p : real;

begin
  p := 1;
  for i := 0 to 6 do 
    if ((a[i] >= c) and (a[i] < d)) then
      p := p * a[i];
  writeln ('p = ', p : 0 : 2);
end.
1.2)
Код:
program laba36;

type
  SomeArray = array [0..1, 0..2] of real;

const
  p : SomeArray  = ((-1.5, 9.1, 3.5), (2.7, 3.14, 1.5));
  k = 0;

function getmax (p : SomeArray; k : integer) : real;
var
  i : integer;
  max : real;
begin
  max := p[0][k];
  for i := 1 to 1 do
    if max < p[i][k] then
      max := p[i][k];
  getmax := max;
end;

var
  i, j : integer;
  max : real;
  
begin
  max := getmax (p, k);
  for i := 0 to 1 do
    for j := 0 to 2 do
      p[i][j] := p[i][j] / max;
  for i := 0 to 1 do
    for j := 0 to 2 do
      writeln (p[i][j] : 0 : 2);
end.

Последний раз редактировалось krypt3r; 21.12.2009 в 12:30..
 
Ответить с цитированием

Поиск самого длинного и самого короткого слова
  #2072  
Старый 22.12.2009, 00:02
Semus
Новичок
Регистрация: 27.03.2009
Сообщений: 12
Провел на форуме:
17616

Репутация: 0
Post Поиск самого длинного и самого короткого слова

Здравствуйте, помогите мне пожалуйста.
Необходимо на С реализовать следующую программу: из введенной пользователем строки выбрать самое длинное и самое короткое слово.

У меня есть свои попытки решения данной задачи, вот один из примеров:
Код:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
    char  stroka[300];
    gets (stroka);

    int dlin_min=strlen(stroka); // хранит длинну минимальной строки, пока равна длинне всей строки
    int dlin_max=0; //хранит максимальную длинну строки
    int dlin_tek=0; //хранит текущую длинну строки

    char stroka_min[300]; //строка хранящая минимальное слово
    char stroka_max[300];// строка хранящая максимальное слово
    char stroka_tek[300]; // строка хранящая текущее слово

    for (int i=0; i<strlen(stroka); i++)
    {
 printf ("i= %d\n", i);
        switch (int(stroka [i]))
        {
            case 32  :{
                              if  (dlin_tek>dlin_max) {
                                                                        for (int j=0; j<dlin_tek; j++)
                                                                        {
                                                                        printf ("j= %d\n", j);
                                                                        stroka_max[j]=stroka_tek[j];
                                                                        };
                                                                        dlin_max=dlin_tek;
                                                                        };
                              if (dlin_tek<dlin_min) {
                                                                        for (int j=0; j<dlin_tek; j++)
                                                                        {
                                                                        printf ("j2= %d\n", j);
                                                                        stroka_min[j]=stroka_tek[j];
                                                                        };
                                                                        dlin_min= dlin_tek;
                                                                        };
                              dlin_tek=0;
                              break;
                              }

            default:
            {
                stroka_tek[i]=stroka[i];
                dlin_tek=strlen(stroka_tek);
            };
        };
    };

printf ("minslovo= %s\n", stroka_min);
printf ("maxslovo= %s\n", stroka_max);
    return EXIT_SUCCESS;
}
Но после нескольких неудачных попыток я понял, я что со стороками у меня все глухо.Заведомо благодарю всех откликнувшихся
 
Ответить с цитированием

  #2073  
Старый 22.12.2009, 11:19
043nKRuT0y
Участник форума
Регистрация: 31.10.2007
Сообщений: 213
Провел на форуме:
394522

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

Помогите дописать на JAVA два метода :
1 - сравнение дат (равно , до , после)
2 - вычисление количества дней между датами
 
Ответить с цитированием

  #2074  
Старый 22.12.2009, 12:42
St0nX
Участник форума
Регистрация: 19.05.2007
Сообщений: 281
Провел на форуме:
2823587

Репутация: 106
Отправить сообщение для St0nX с помощью ICQ
По умолчанию

Цитата:
Сообщение от Semus  
Здравствуйте, помогите мне пожалуйста.
Необходимо на С реализовать следующую программу: из введенной пользователем строки выбрать самое длинное и самое короткое слово.
Но после нескольких неудачных попыток я понял, я что со стороками у меня все глухо.Заведомо благодарю всех откликнувшихся
PHP код:
#include<string.h> 
#include <stdio.h>

void main(void)
{
char *string "a asd sss dasq";
char *s;
char *min;
char *max;
int i,j,h;
strtok(string," ");
strlen(s);
i;
while  (
s  !=NULL)   
{
strtok(NULL," ");
if(
s!=NULL)
{
    
j=strlen(s);
    if (
i<j)
    {
    
i=j;
    
max s;
    }
    if (
h>j)
    {
    
h=j;
    
min s;
    }
}
}
printf("Min %s len - %d",min,h);
printf("Max %s len - %d",max,i);

Как то так. Не проверял но смысл как это делать вроде понятен.

Последний раз редактировалось St0nX; 22.12.2009 в 12:44..
 
Ответить с цитированием

  #2075  
Старый 22.12.2009, 13:32
Trotter
Новичок
Регистрация: 11.06.2007
Сообщений: 2
Провел на форуме:
3946

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

Всем привет, понимаю точ то не сюда пишу но всёже, мне надо написать сетевой органайзер на Visual Studio C++ помощи не прошу с формами с кнопочками и т.д но вот беда я нечего не знаю по поводу как так кодить, раньше баловался на делфи тама всё просто было, попробовал тоже самое провести на этой среде нечего конечно же не получилось, помогите советом
 
Ответить с цитированием

Помогите разобраться с кодом
  #2076  
Старый 22.12.2009, 21:17
Semus
Новичок
Регистрация: 27.03.2009
Сообщений: 12
Провел на форуме:
17616

Репутация: 0
По умолчанию Помогите разобраться с кодом

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

Код:
//определяем число вхождений подстроки в введенную пользователем строку

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

int main ()
{
    //вводим строку в которой осуществляем поиск
    char * stroka;
    printf ("Vvedite stroku:");
    gets (stroka);
    printf ("%s\n", stroka);

    // вводим строку которую будем искать
    char * iskom;
    printf ("Vvedite iskomuy stoku: ");
    scanf ("%s", &iskom);

    //указатель на на номер на найденный номер
    char * point = 0;

    //следующая переменная - счетчик
    int i = 0;

    for (;;)
    {
        point = strstr(stroka, iskom);
        stroka=point+1;
        if (point==NULL) {break;}
        i++;
    };

    printf ("kolichestvo vhogdenii = %d", i);

    return 0;
}
Заранее благодарю
 
Ответить с цитированием

  #2077  
Старый 23.12.2009, 01:28
Trotter
Новичок
Регистрация: 11.06.2007
Сообщений: 2
Провел на форуме:
3946

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

я конечно не совсем силён и могу ошибаться, но тебе надо выделять память...
типо вместо char * stroka писать char * stroka new char[256];
и чтобы вот такова бреда не было printf ("kolichestvo vhogdenii)
подрубай locale.h и в main(){setlocale(LC_ALL, "RUSSIAN"); код... printf("Привет")}
а по поводу выделения памяти я не знаю как на си сделать malloc юзай хотя у меня так заработало как первый раз писал тока вот цикл странный зацикленный какой то)) с циклом извиняй помочь не могу, и чтобы строку к строке прировнять надо по моемому перегрузку оператора сделать... хотя я дилетант тоже не ругайте меня ))
 
Ответить с цитированием

Описание классов в C++
  #2078  
Старый 23.12.2009, 13:52
modsonic
Новичок
Регистрация: 22.12.2009
Сообщений: 1
Провел на форуме:
5660

Репутация: 0
По умолчанию Описание классов в C++

Пожалуйста, подскажите как описать класс «Экзаменационная ведомость», частью которого является класс «Студент», хранящий информацию о студенте и его оценке на экзамене. Предусмотреть возможность задания произвольного количества студентов, сортировки студентов по фамилии, вычисления среднего балла за экзамен, а также вывода на экран количества различных оценок. Вот код, который я смог написать, но это еще далеко от идеала:

Код:
#include <string.h>
#include <iostream>
#include <stdlib.h>
#include <vcl.h>
#pragma hdrstop
#include <cstdlib>
#include <conio.h>
#pragma argsused
using namespace std;

class ekzam{
	public:
	class stud{
	string name;
	string famil;
	string otches;
	int otsenka;
} temp;
	int col;
	int srb;
	int *values;
	int count;
	ekzam(int col){
		count=col;
		values=new int[count];
	}
	~ekzam(){
		delete[]values;
	}
	void Get(int i){
    	for(i=0;i<col;i++){
			cin>>stud[i].name;
		}
	}
};

main()
{
	int n,i;
	cin>>n;
	ekzam students(n);
	system("PAUSE");
	return EXIT_SUCCESS;
}

Последний раз редактировалось slesh; 23.12.2009 в 14:13..
 
Ответить с цитированием

  #2079  
Старый 23.12.2009, 19:56
cupper
Постоянный
Регистрация: 06.06.2007
Сообщений: 575
Провел на форуме:
1180737

Репутация: 180


По умолчанию

шот какоето безумие внутри класса создавать еще клас, тут логически правильней было бы, создать класс студен со следующими полями:
ФИО
ГРУППА
Хеш таблица /* Ключ: название экзамена, значение: оценка*/
/* не зубудь что вместо оценки может быть неявка, ее можно обозначить например как -1, а 0 - это оценки еще нет */
...

А потом создать класс ведомость:
Вектор <Студент>
...
ну и добавить в этот клас всякие приблуды:
добавление студента в ведомость,
проверка чтобы каждый студент присутствовал только один раз в одной ведомости
сортировка вектора по ФИО
Выставление оценки студенту в ведомости

так будет гораздо правильней

Последний раз редактировалось cupper; 23.12.2009 в 20:00..
 
Ответить с цитированием

  #2080  
Старый 23.12.2009, 20:52
Ra$cal
Постоянный
Регистрация: 16.08.2006
Сообщений: 640
Провел на форуме:
1354067

Репутация: 599


По умолчанию

не правильно. оценка хранится не в студенте. и группа в студенте - полнейший бред. в жизни разве так?

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



вот такая диаграммка как вариант.

[EDIT]
Exam поправил на Subject (дисциплина)

Последний раз редактировалось Ra$cal; 23.12.2009 в 21:02..
 
Ответить с цитированием
Ответ



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



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


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




ANTICHAT.XYZ