Студентам с лабораторными сюда (архивная - 2015)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by _Great_, 20 Jun 2007.

Thread Status:
Not open for further replies.
  1. fker

    fker Member

    Joined:
    26 Nov 2008
    Messages:
    135
    Likes Received:
    64
    Reputations:
    -1
    ss88
    А как лучше - читать текстовый, создавать массив потом сортировать и записывать в бинарный файл или - сразу читать текстовик и записывать в бинарный а потом сортировать(уже в бинаре) ?
     
  2. Ra$cal

    Ra$cal Elder - Старейшина

    Joined:
    16 Aug 2006
    Messages:
    670
    Likes Received:
    185
    Reputations:
    78
    зависит от количества записей. если их очень много - то чтобы не убить оперативу делаешь сортировку слиянием, она работает с файлами. если записей не фатально много - сортировка в памяти и лишь потом запись.
     
    1 person likes this.
  3. ss88

    ss88 Banned

    Joined:
    27 Nov 2008
    Messages:
    160
    Likes Received:
    44
    Reputations:
    5
    Полностью согласен с Ra$cal, это уже тонкости контекста применения и это не касается банальной лабораторной работы 1-го или 2-го курса, которая рассматривалась в данном случае.

    Вот бы преподы радовались, если бы мы писали такой код на 1-м или 2-м курсе ))) А то... вспомню-вздрогну )))
     
    1 person likes this.
  4. Lionis

    Lionis Member

    Joined:
    13 Dec 2008
    Messages:
    94
    Likes Received:
    7
    Reputations:
    0
    TurboPascal

    27 школьных задач по turbopascal - 500 рублей , могу и webmoney ...
    скачать задачи
    кому интересно :
    icq : 2669856-пять-шесть
     
  5. ss88

    ss88 Banned

    Joined:
    27 Nov 2008
    Messages:
    160
    Likes Received:
    44
    Reputations:
    5
    А самому, не? )))
     
  6. Lionis

    Lionis Member

    Joined:
    13 Dec 2008
    Messages:
    94
    Likes Received:
    7
    Reputations:
    0
    у меня нет времени , сейчас работаю ... завтра сдавать .
     
  7. sebay

    sebay Member

    Joined:
    9 Mar 2009
    Messages:
    26
    Likes Received:
    22
    Reputations:
    0
    кто-нибудь может переписать этот код в наиболее простой вид?

    Code:
    #ifndef MYSTRING_HPP
    #define MYSTRING_HPP
    
    #include <cstring> // memcpy, strlen
    #include <cstdlib> // malloc, realloc
    
    class MyString {
    	private:
    		char *data;
    		size_t length;
    
    	public:
    		MyString() : data(0), length(0) { } // default constructor
    
    		MyString(const char *str) {
    			if (0 != str) {
    				size_t size = std::strlen(str) + 1;
    				length = size - 1;
    				data = static_cast<char *>(std::malloc(size));
    				std::memcpy(data, str, size);
    			} else {
    				length = 0;
    				data = 0;
    			}
    		}
    
    		MyString(const MyString& other) {
    			length = other.length;
    			data = static_cast<char *>(std::malloc(length + 1));
    			std::memcpy(data, other.data, length + 1);
    		}
    
    		~MyString() {
    			if (0 != data) {
    				delete data;
    			}
    		}
    
    		MyString& operator=(const MyString& rhs) {
    			if (this == &rhs) {
    				return *this;
    			}
    			length = rhs.length;
    			data = static_cast<char *>(std::realloc(data, length + 1));
    			std::memcpy(data, rhs.data, length + 1);
    			return *this;
    		}
    
    		operator const char*() {
    			return data; // unsafe
    		}
    
    		MyString& operator+=(const MyString& rhs) {
    			data = static_cast<char *>(std::realloc(data, length + rhs.length + 1));
    			std::memcpy(data + length, rhs.data, rhs.length + 1);
    			length += rhs.length;
    		}
    
    		const MyString operator+(const MyString& rhs) const {
    			return MyString(*this) += rhs;
    		}
    
    		char operator[](int idx) const {
    			if (idx >= 0 && idx <= length) {
    				return data[idx];
    			}
    		}
    
    		char& operator[](int idx) {
    			if (idx >= 0 && idx <= length) {
    				return data[idx];
    			}
    		}
    };
    
    #endif
    
    
     
  8. Spider545

    Spider545 New Member

    Joined:
    10 Apr 2009
    Messages:
    26
    Likes Received:
    2
    Reputations:
    0
    Кто-нибудь может написать дешифратор (Метод простой перестановки) на СИ??????
     
  9. ss88

    ss88 Banned

    Joined:
    27 Nov 2008
    Messages:
    160
    Likes Received:
    44
    Reputations:
    5
    Обьясни поконкретнее, может, разомнусь...
    Люблю С :)
     
  10. Gray_Wolf

    Gray_Wolf Active Member

    Joined:
    7 Mar 2009
    Messages:
    377
    Likes Received:
    135
    Reputations:
    10
    Вот описание алгоритма:
    http://protect.htmlweb.ru/p11.htm#MP

    2Spider545 исходные данные для проги должны быть: строка, N и M? или я неправильно понял?
     
    #1690 Gray_Wolf, 2 Oct 2009
    Last edited: 2 Oct 2009
  11. ][yZ

    ][yZ Member

    Joined:
    3 Mar 2009
    Messages:
    66
    Likes Received:
    46
    Reputations:
    10
    Задачка

    Дан файл, в котором записано N символов. Найти наиболее часто встречающийся элемент в файле (файл будет более чем наполовину состоять из него) за O(1) памяти (не используя массивы и динамические структуры памяти).
    Например:
    Code:
    19zz2gzzkozfz5zxOzzzDjzfzzz
    Программа должна вывести:
    Code:
    z
    Ах да, чуть не забыл, разрешается пройтись по файлу только 1 раз.
     
    #1691 ][yZ, 2 Oct 2009
    Last edited: 2 Oct 2009
  12. xtra

    xtra New Member

    Joined:
    11 Mar 2007
    Messages:
    26
    Likes Received:
    2
    Reputations:
    0
    поможет кто нибудь?))
    язык с#
     
  13. Spider545

    Spider545 New Member

    Joined:
    10 Apr 2009
    Messages:
    26
    Likes Received:
    2
    Reputations:
    0
    вот само задание:
    Разработать программу, взламывающую шифр, основываясь на статистике естественного языка.
    Исходные данные : Дан шифротекст и размер блока. Требуется получить открытый текст и ключ — последовательность перестановки символов (получить автоматически).
    И все основываясь на метод простой перестановки. :)
     
  14. Gray_Wolf

    Gray_Wolf Active Member

    Joined:
    7 Mar 2009
    Messages:
    377
    Likes Received:
    135
    Reputations:
    10
    Мда...
    Какбы в то что вы первоначально тут спросили никак не входил криптоанализ...
    И у меня возникло предчувствие что даже в ВУЗах на подобное даётся не 2 дня :)
    И если по части программирования эта задача достаточно тривиальна, то криптоанализ в виде статистики естественного языка требует как минимум наличия этой самой статистики...(которая у вас должна быть)

    А так задачка достаточно интересная, но как я уже говорил без доп. материалов можно слишком перемудрить, и тогда вам сложно будет выдать эту программу за свою...
     
  15. Spider545

    Spider545 New Member

    Joined:
    10 Apr 2009
    Messages:
    26
    Likes Received:
    2
    Reputations:
    0
    Эта самая статистика есть могу выложить тут)))))
    Вся проблема в том как получить ключ из текста, с данными этой статистики, как реализовать на СИ....
    А потом уже как есть ключ текст по блочно расшифровывается...так вот дела(((
     
  16. Gray_Wolf

    Gray_Wolf Active Member

    Joined:
    7 Mar 2009
    Messages:
    377
    Likes Received:
    135
    Reputations:
    10
    В вашем случае думаю лучше создать здесь отденьную тему, в шапке которой максимально описать задачу, и выдать максимум имеющихся данных.

    А алгоритм у вас будет примерно следующим:
    Т.к. длинна ключа нам всётаки известна, мы делаем перебор всех возможных вариантов, и основываясь на статистике давать каждому результату коэфициент верности. После чего вариант с наивысшим коэфициентом и будет верным.

    Это самый ресурсоёмкий вариант, но вместе с тем и самый простой.

    Усложнить и ускорить его можно например если вводить доп. данные, такие как "слово не может начинаться на Ы, Ъ и Ь" что уменьшить потенциальное кол-во вариантов для перебора...
     
  17. G4bR1eL

    G4bR1eL Elder - Старейшина

    Joined:
    25 Mar 2008
    Messages:
    70
    Likes Received:
    3
    Reputations:
    0
    Кому будет скучно, еще 1 на TP.
    Найти сумму целых положительных чисел кратных 4м и меньше 50и.
     
  18. intNet

    intNet Member

    Joined:
    31 May 2009
    Messages:
    29
    Likes Received:
    14
    Reputations:
    5
    На паскале оч. давно не писал...
    Code:
    program Project1;
    
    var
      summ, i: integer;
    
    begin
      i:=0;
      summ:=0;
      while true do
      begin
        inc(i, 4);
        if i > 50 then break;
        inc(summ, i);
      end;
      writeln('Summ: ', summ);
      readln;
    end.
    
     
    1 person likes this.
  19. 043nKRuT0y

    043nKRuT0y Elder - Старейшина

    Joined:
    31 Oct 2007
    Messages:
    226
    Likes Received:
    8
    Reputations:
    0
    Всем привет !
    Так как ето единый раздел для ЛР задаю вопрос здесь ....
    В общем помогите решыть на "JAVA"

    -Дано целое число N (> 0). Найти значение выражения
    1.1 – 1.2 + 1.3 – …

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

    -Дано число A (> 1). Вывести наименьшее из целых чисел K, для которых сумма 1 + 1/2 + … + 1/K будет больше A, и саму эту сумму.

    -Описать процедуру SortDec3(A, B, C), меняющую содержимое переменных A, B, C таким образом, чтобы их значения оказались упорядоченными по убыванию (A, B, C — вещественные параметры, являющиеся одновременно входными и выходными). С помощью этой процедуры упорядочить по убыванию два данных набора из трех чисел: (A1, B1, C1) и (A2, B2, C2).
     
  20. >>serhio<<

    >>serhio<< New Member

    Joined:
    10 Feb 2009
    Messages:
    40
    Likes Received:
    0
    Reputations:
    0
    Помогите найти ошибку!
    [PASCAL]program primer;
    var
    f,x:real;
    begin
    writeln(x=');
    readln(x);
    ifx>0then
    f:=(exp(3*ln(x))/sgrt(3))-exp(x)*ln(abs(exp(3*ln(1,37)+exp(3*ln(x))+4/3
    else
    f:=(exp(3*ln(x))=sgrt(7))/cos(x-2pi))-ln(abs(exp(3*ln(x)))+4*(sin(x)/cos(x));
    writeln('f=',f);
    readln;
    end.[/PASCAL]
     
Thread Status:
Not open for further replies.