Форум программистов, компьютерный форум, киберфорум
Basic
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
Basic Не получается разобраться в макросе Выдает ошибку (end with without with) Dim i As Integer End With For i = 1 To 10 With Application .Calculation = xlManual .MaxChange = 0.001 End With ActiveWorkbook.PrecisionAsDisplayed = False Calculate https://www.cyberforum.ru/ basic/ thread452670.html Basic Ввести имя файла (с расширением) и заменить его на расширение ".exe"
Ввести имя файла( с расширением )и Заменить его на расширение ".exe" Помогите кто чем может)
Basic Напечатать список студентов, упорядоченный по алфавиту Дан список студентов группы и оценки экзаменационной сессии. Напечатать список, упорядоченный по алфавиту, сред-ний балл каждого и фамилии лучшего и худшего студента по среднему баллу. Вывод на экран сформировать в виде таблицы. Для ввода данных использовать форму и элементы управления. https://www.cyberforum.ru/ basic/ thread449692.html Basic Вычислить сумму элементов первой строки и произведение последнего столбца в каждой матрице https://www.cyberforum.ru/ basic/ thread449689.html
Даны три матрицы А(n,m); В(l,l); С(k,l). Вычислить сум-му элементов первой строки и произведение последнего столбца в каждой матрице.
Basic Поиск максимального элемента в массиве из N элементов, используя «кубковую систему»
Написать процедуру поиска максимального элемента в массиве из N элементов, используя «кубковую систему»: на пер-вом шаге алгоритма из каждой пары рядом стоящих элементов выбирается максимальный – он проходит в следующий тур. Элемент, которому не находится пара, переходит в следующий тур безусловно. На следующем шаге алгоритм повторяется и так до тех пор, пока в массиве не останется один элемент...
Basic Найти количество слов в тексте, у которых первый и последний символ совпадают https://www.cyberforum.ru/ basic/ thread449687.html
В файле хранится произвольный текст. Группы символов, разделенные пробелом и не содержащие пробелов внутри себя, будем называть словами. Найти количество слов в тексте, у которых первый и последний символ совпадают.
Basic Составить программу, определяющую, сколько баллов набрал победитель К финалу конкурса лучшего по профессии «Специалист электронного офиса» были допущены трое: Иванов, Петров, Сидоров. Соревнования проходили в три тура. Иванов в первом туре набрал m1 баллов, во втором – n1, в третьем – p1. Петров – m2, n2, p2 соответственно; Сидоров – m3, n3, p3. Составить про-грамму, определяющую, сколько баллов набрал победитель. https://www.cyberforum.ru/ basic/ thread449686.html Написать программу, которая упорядочивает список учеников Basic
Разработать алгоритм, написать и отладить программу на Basic, которая упорядочивает список учеников класса в алфавитном порядке по первой букве фамилии. Помогите, пожалуйста:scratch::)
Basic Написать программу, которая переводит заданное положительное число в р-ичную систему счисления (р<16) Разработать алгоритм, написать и отладить программу на Basic, которая переводит заданное положительное число в р-ичную систему счисления (р<16). Помогите пожалуйста:) https://www.cyberforum.ru/ basic/ thread442348.html Basic Найти сумму положительных элементов и сумму отрицательных элементов массива Здравствуйте. буду очень признателен, если вы поможете мне с решением задач. 1) Дан массив Аi, i=1,2,…,15. Найти сумму положительных элементов и сумму отрицательных элементов массива S1 и S2 . Определить, что больше S1 или S2 . Входные данные задать самостоятельно. 2) Дан массив Xi, i=1, 2, …,15. Найти произведения положительных и отрицательных элементов массива Р1 и Р2. Определить, что... https://www.cyberforum.ru/ basic/ thread441740.html
Basic Где скачать Mobile basic
У когонибудь есть Mobile basic для компьютера, или кто нибуть знает где его скачать?
Basic Найти Произведение матриц https://www.cyberforum.ru/ basic/ thread439651.html
как найти произведение матриц A*A*A*...*A, взятых n-раз?
54 / 5 / 0
Регистрация: 24.02.2012
Сообщений: 25
0

Комплексное решение задачи по "Коррекции кода" - Basic - Ответ 2529467

26.02.2012, 20:09. Показов 1314. Ответов 0
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Начну с того что я уже не мало тем запостил ну как запостил, размножил по различным разделам языков в поиске помощи по решению задачи хоть и основным языком был VBA я получил ещё коды программы в C++ и Delphi и массу впечатлений и опыта
ПОЕХАЛИ

Задача "Коррекция кода":
По некоторому каналу связи передаётся сообщение, имеющее вид последовательности нулей и единиц. Из-за помех возможен ошибочный приём некоторых сигналов: нуль может быть воспринят как единица и наоборот. Для повышения вероятности правильного приёма сигналов было решено передавать каждый исгнал трижды. Теперь передатчик вместо 1 всегда передаёт 111, а вместо 0 всегда 000.
Нам предлагается написать программу, которая будет восстанавливать исходное сообщение. При передаче могли произойти ошибки, поэтому вместо каждой тройки цифр программа должна вывести ту цифру, которая встречаетсяя в этой тройке по крайне мере два раза.
Ввод: Одна строка, в которой могут быть только символы "0" и "1". Длина строки-число, кратное трём, больше двух и меньше 760.
Вывод: Мы должны вывести в одну строку раскодированное сообщение
Пример входных данных: 110111010001
Пример выходных данных: 1100

Приступим непосредственно к решению


gaw - этот человек который непосредственно решил проблему на 110 %

вот файл с незначительной моей доработкой называется Декодер отличный.xls

а вот и код этого "Декодера" в VBA



PureBasic
1
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
Private Sub Label1_Click()
 
End Sub
 
'процедура нажатия клавиши в текстовом поле
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
'объявляем переменные для работы
Dim stroka As String ' входная строка
Dim dlina As Integer 'длина входной строки
Dim result As String 'строка-результат
Dim i As Integer     'счетчик цикла
 
'KeyCode- код нажатой клавиши  ,KeyCode = 13 соответствует Enter
If KeyCode = 13 Then              'т.о. если нажата клавиша Enter, - начинаем проверки
 
stroka = TextBox1.Text 'запомним содержимое строки
dlina = Len(TextBox1.Text) 'и определим ее длину
 
For i = 1 To dlina 'в цикле по всей длине строки
'Mid(stroka, i, 1)--- часть строки, начиная с i и длиной 1
'если текущий (i) символ строки не равен 0 и не равен 1, - то
If Mid(stroka, i, 1) <> 0 And Mid(stroka, i, 1) <> 1 Then
MsgBox "строка должна содержать только 0 и 1" 'сообщаем об этом
Exit Sub                                     'и выходим из процедуры
End If
Next i
 
If dlina < 3 Or dlina > 759 Then  'если длина не входит в оговоренный диапазон, то
MsgBox " длина строки должна быть больше 2 и меньше 760" 'сообщаем об этом
Exit Sub                           'и выходим из процедуры
End If
 
If dlina Mod 3 <> 0 Then         'если длина не кратная 3, т.е. остаток от деления на 3 не =0
MsgBox "длина строки должна быть кратна 3"  'сообщаем об этом
Exit Sub                 'и выходим из процедуры
End If
 
 
                      'если все проверки прошли, - начинаем декодировать
Label1.Caption = ""   'чистим поле для вывода
result = ""           'очищаем переменную для результата
For i = 1 To dlina Step 3 'в цикле по всей длине с шагом 3 (по три символа
kod = Val(Mid(stroka, i, 3)) 'выделяем часть строки от i длиной 3, т.е. рассматриваем все тройки
'если числовое (Val) значение тройки =0 или 1 или 10 или 100
If kod = 1 Or kod = 10 Or kod = 100 Or kod = 0 Then 'то это значит, что больше 0
result = result & 0 'тогда прибавляем к результату 0
Else               'иначе, т.е.значение тройки не равно ни 0 ни 1 ни 10 ни 100
                   'а это значит, что больше 1
result = result & 1 'тогда добавляем к результату 1
End If
Next i 'завершаем цикл
Label1.Caption = result 'и выводим результат
End If
End Sub
 
 
Private Sub UserForm_Click()
 
End Sub
так же спасибо пользователю Alex77755
данный товарищ предоставил только код и вот он ниже указан

PureBasic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Sub Кнопка1_Щелкнуть()
Dim s As String
Dim K As Byte
Dim R As String
Do
    s = InputBox("Введите код", "Ввод данных!", "110111010001")
    If s = "" Then Exit Sub ' нажали отмена
    Debug.Print s, Len(s), Len(s) Mod 3
        If Len(s) >= 2 And Len(s) Mod 3 = 0 Then 'если символов больше 1 и их количество кратно 3
        Exit Do
    End If
 MsgBox "Некорректный ввод!", vbCritical, ""
Loop
For j = 1 To Len(s) Step 3
    K = Val(Mid(s, j, 1)) + Val(Mid(s, j + 1, 1)) + Val(Mid(s, j + 2, 1))
    R = R & IIf(K < 2, 0, 1): K = 0
Next j
MsgBox R, 64, ""
End Sub
а дальше я над ним потрудился и вот вышел файл Декодер1.xls
Но это ещё не всё

Так же спасибо огромное niXman
он сделал эту программу на языке C++, ниже код на неё

C++
1
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <stdio.h>
#include <string.h>
 
int check_string(const char* string) {
   for ( ; *string; ++string ) {
      if ( !(*string == '0' || *string == '1') )
         return 1;
   }
 
   return 0;
}
 
int is_zero(const char* string) {
   int idx = 0;
   int cnt = 0;
   for ( ; idx < 3; ++idx ) {
      if ( string[idx] == '0' )
         cnt++;
   }
 
   return cnt >= 2;
}
 
int main() {
   const int max_string_len = 760;
   char string_buf[max_string_len+1];
 
   int string_len = 0;
   int string_index = 0;
 
   // раскомментировать при сдаче
   //printf("%s\n", "Введите исходную строку длиной от 3 до 760 символов:");
   //fscanf(stdin, "%s", string_buf);
   
   // удалить при сдаче
   strcpy(string_buf, "111");
 
   string_len = strlen(string_buf);
   if ( string_len <= 760 && (string_len % 3) == 0 && check_string(string_buf) == 0 ) {
      for ( ; string_index < string_len; string_index += 3 ) {
         printf("%c", (is_zero(string_buf+string_index) ? '0' : '1'));
      }
      printf("\n");
   } else {
      printf("%s\n", "Ошибка в исходной строке. Завершаемся.");
      return 1;
   }
 
   return 0;
}
Еще нам написали программу на языке Delphi. К сожалению автор был удалён вместе со статьёй. Обязательно бы добавил, но не помню кто. Всё же этот человек молодец и ему ОГРОМНОЕ СПАСИБО!

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var s,s1:string;
    i,k:integer;
begin
//ввод строки
s1:='';
while length(s)>0 do
 begin
  k:=0;
  for i:=1 to 3 do
  if s[i]='0' then k:=k+1;
  if k>1 then s1:=s1+'0'
  else s1:=s1+'1';
  delete(s,1,3);
 end;
//вывод результата
end.
В общем. Дорогие форумчане, спасибо вам большое за поддержку, помощь, терпение . Без вас не было бы таких вот статей . Прошу понимания модераторов и администраторов: Я на данном форуме очень малое время. И хоть успел накосячить, занимаясь размножением тем, но ошибку понял.

Ещё раз ВСЕМ ОГРОМНОЕ СПАСИБО

Вернуться к обсуждению:
Комплексное решение задачи по "Коррекции кода" Basic
Вложения
Тип файла: xls Декодер1.xls (34.0 Кб, 12 просмотров)
Тип файла: xls Декодер отличный.xls (47.5 Кб, 11 просмотров)
1
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.02.2012, 20:09
Готовые ответы и решения:

Новичок просит ревью кода. Решение задачи
Здравствуйте. Решаю задачи на сайт с задачей. вот одна из них.... Мое решение ...

Конвертация Python кода в C# (или решение задачи)
Здравствуйте, пожалуйста подскажите как перевести данный код в C# (оригинал статьи ). Либо...

Нужно оптимизировать решение задачи по времени (условие после кода)
Нужно оптимизировать решение задачи по времени (условие после кода) robots = input() if 'W' in...

Оценить качество кода -- решение учебное задачи для начинающих
Решил задачу для начинающих на acmp по Java. Мой результат -- задача принята, но время...

0
26.02.2012, 20:09
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.02.2012, 20:09
Помогаю со студенческими работами здесь

Оценить качество кода -- решение учебное задачи для начинающих
Я где-то читал, что программисту важно хорошо разбираться в О больших. Например, можно решить...

Решение дифференциального уравнения методом Адамса с формулами прогноза и коррекции
Срочно нужен листинг программы решения дифференциального уравнения методом Адамса с формулами...

Как реализовать данное решение простой задачи в виде программного кода
Известно, что длина волны K-линии одного элемента равна 0,1713 нм. Выяснить по таблице Менделеева,...

Доработка кода: нужно реализовать меню, ввод массива тремя способами и решение задачи
Program Kursovaya; uses graphABC, abcObjects; var mass:array of integer; i, j, k, M, N,...

Комплексное решение квадратного уравнения
Нужно решить дискриминант. При этом d&lt;0 abc != 0 static double...

Аналитическое решение решение краевой задачи для ОДУ второго порядка
Здравствуйте! Задача: Аналитически найти частное решение ОДУ. Изначально в частных производных, но...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru