Questions
QUESTION 4 KAM Ltd (KAM) is a private company in the electronics industry. The company has...

QUESTION 4

KAM Ltd (KAM) is a private company in the electronics industry. The company has grown steadily since its incorporation in 1997 and is seeking public listing in the next financial year.

KAM prepared its financial statements under International Financial Reporting Standards (IFRS).

You work in the finance department of KAM and are currently working on the financial statements for the year ended 30 April 2020.

In order to gain maximum interest from the market when shares are offered for public trading, the Directors of KAM are keen to present financial statements showing high profitability.

They are aware that market analysts will look favourably on a higher than average return on capital employed (ROCE) for the electronics industry.

The standard formula to calculate gearing by analysis is:

Profit before interest and tax Equity + Long term liabilities

When reviewing the financial statement the following matters come to light: Part (a)

On 1 May 2019, KAM issued redeemable preference shares for £10 million. The preference shares carry a fixed dividend of 5%.

The dividend of £500,000 has been paid on 30 April 2020 and this amount has been deducted from reserves.

The directors are pleased as the amount paid has not affected the profit for the year.

QUESTION 4 CONTINUES ON THE NEXT PAGE:-

REQUIRED:

  1. Explain the correct treatment of the bond under IFRS, identifying any necessary adjustments to the profit for the year ending 30 April 2020.

Maximum word count 200

  1. Explain whether the return on capital employed for KAM will change as a result of the adjustments calculated in (a) (i).

Maximum word count: 100

Part (b)

On 1 May 2019, KAM granted 100 share options to all of its employees within its development team on the condition that they remain in its employment for the next four years.

At the grant date, there were 150 employees in the development team and the fair value of each option on the grant date was £52.

During the year ended 30 April 2019, the estimate of the total employee departure was assessed as 10% of the original 150 employees.

During the year ended 30 April 2020, the estimate of total employee departures was reassessed to 8% of the original 150 employees.

The share based payment was correctly accounted in the financial statements for the year ended 30 April 2019. The directors of KAM have stated that they do not wish to make any adjustment for the year ended 30 April 2020, as the impact of the options won’t be felt for another 2 years.

QUESTION 4 CONTINUES ON THE NEXT PAGE:-

REQUIRED:

  1. Compute any necessary adjustments to profit before interest and tax for the year ended 30 April 2020 as well as the balance within equity on that date.

  1. Provide a brief explanation for the treatment of this type of share based payment in accordance with IFRS 2: Share based payment.

Word count: 200

  1. Explain whether the return on capital employed for KAM Plc. will increase or decrease as a result of adjustments calculated in (a) (i).

Word count 100

Having made the adjustments as well as providing explanations for these amendments for the share-based payments, you receive an email from the Managing Director asking:

ā€œCan the estimates for total expected departures be increased, so lessening the impact of profit?ā€

REQUIRED:

Construct a brief reply to the Managing Director’s email discussing whether this would be permitted under IFRS.

In: Accounting

Can someone please add clear and concise comments thoroughly explaining each line of code below. Just...

Can someone please add clear and concise comments thoroughly explaining each line of code below. Just need help understanding the code, don't need to modify it.

The purpose of the code is to count the frequency of words in a text file, and return the most frequent word with its count. It uses two algorithms:

Algorithm 1 is based on the data structure LinkedList. It maintains a list for word frequencies. The algorithm runs by scanning every token in the input stream, and increments its corresponding frequency count.

Algorithm 2 uses two arrays to keep track of the counts.

Code:

import java.io.File;
import java.util.Scanner;
import java.util.Map.Entry;
import java.util.AbstractMap;
import java.util.LinkedList;

public class WordCountLinkedList254{

    public static Entry count_ARRAY(String[] tokens) {

        int CAPACITY = 10000;
        String[] words = new String[CAPACITY];
        int[] counts = new int[CAPACITY];

        for (int j = 0; j < tokens.length; j++) {
            String token = tokens[j];
            for (int i = 0; i < CAPACITY; i++) {
                if (words[i] == null) {
                    words[i] = token;
                    counts[i] = 1;
                    break;
                } else if (words[i].equals(token))
                    counts[i] = counts[i] + 1;
            }
        }
        int maxCount = 0;
        String maxWord = "";
        for (int i = 0; i < CAPACITY & words[i] != null; i++) {
            if (counts[i] > maxCount) {
                maxWord = words[i];
                maxCount = counts[i];
            }
        }
        return new AbstractMap.SimpleEntry < String, Integer > (maxWord, maxCount);
    }
  
   public static Entry count_LINKED_LIST(String[] tokens) {
        LinkedList> list = new LinkedList> ();
        for (int j = 0; j < tokens.length; j++) {
            String word = tokens[j];
            boolean found = false;

            /* for (int i = 0; i < list.size(); i++) {
            Entry e = list.get(i);
            if (word.equals(e.getKey())) {
            e.setValue(e.getValue() + 1);
            list.set(i, e);
            found = true;
            break;
               }
            }*/

            int i = 0;
            for (Entry e: list) {
                if (word.equals(e.getKey())) {
                    e.setValue(e.getValue() + 1);
                    list.set(i, e);
                    i++;
                    found = true;
                    break;
                }
            }

            if (!found)
                list.add(new AbstractMap.SimpleEntry (word, 1));
        }
        int maxCount = 0;
        String maxWord = "";
        for (int i = 0; i < list.size(); i++) {
            int count = list.get(i).getValue();
            if (count > maxCount) {
                maxWord = list.get(i).getKey();
                maxCount = count;
            }
        }
        return new AbstractMap.SimpleEntry < String, Integer > (maxWord, maxCount);
    }
  
    static String[] readText(String PATH) throws Exception {
        Scanner doc = new Scanner(new File(PATH)).useDelimiter("[^a-zA-Z]+");
        int length = 0;
        while (doc.hasNext()) {
            doc.next();
            length++;
        }
      
        String[] tokens = new String[length];
        Scanner s = new Scanner(new File(PATH)).useDelimiter("[^a-zA-Z]+");
        length = 0;
        while (s.hasNext()) {
            tokens[length] = s.next().toLowerCase();
            length++;
        }
        doc.close();
      
        return tokens;
    }
  
    public static void main(String[] args) throws Exception {
      
        String PATH = "/Users/jianguolu/Dropbox/254/code/dblp1k.txt ";
        String[] tokens = readText(PATH);
        long startTime = System.currentTimeMillis();
        Entry entry = count_LINKED_LIST(tokens);
        long endTime = System.currentTimeMillis();
        String time = String.format("%12d", endTime - startTime);
        System.out.println("time\t" + time + "\t" + entry.getKey() + ":" + entry.getValue());
      
        tokens = readText(PATH);
        startTime = System.currentTimeMillis();
        entry = count_ARRAY(tokens);
        endTime = System.currentTimeMillis();
        time = String.format("%12d", endTime - startTime);
        System.out.println("time\t" + time + "\t" + entry.getKey() + ":" + entry.getValue());
    }
}

In: Computer Science

Our MIPS assembly version will ā€œcompileā€ the following C program: #include void Compare(int b1, int h1,...

Our MIPS assembly version will ā€œcompileā€ the following C program: #include void Compare(int b1, int h1, int b2, int h2); int Area(int b, int h); int main(int argc, char **argv) { int base1, base2, height1, height2; base1=10; base2=12; height1=8; height2=7; Compare(base1, height1, base2, height2); return 0; } void Compare(int b1, int h1, int b2, int h2) { int A1=Area(b1, h1); int A2=Area(b2, h2); if (A1>=A2) printf("Area1 is greater than Area2.\n"); else printf("Area2 is greater than Area1.\n"); } int Area(int b, int h) { int A=(b*h)/2; return A; } The MIPS Assembly Triangles Program .data: b1: .word 10 h1: .word 12 b2: .word 8 h2: .word 7 msg1: .asciiz "Area1 greater than Area2.\n" msg2: .asciiz "Area2 greater than Area1.\n" 5 Adriana WISE—CS301 Thursday, September 26, 2019 debug1: .asciiz "Area1=" debug2: .asciiz "Area2=" newline: .asciiz "\n" .text: main: lw $a0, b1 lw $a1, h1 lw $a2, b2 lw $a3, h2 jal Compare li $v0, 10 syscall Compare: subi $sp, $sp, 4 sw $ra, 0($sp) jal Area add $s0, $v0, $zero la $a0, debug1 li $v0, 4 syscall add $a0, $s0, $zero li $v0, 1 syscall la $a0, newline li $v0, 4 syscall la $a0, debug2 li $v0, 4 syscall add $a0, $a2, $zero add $a1, $a3, $zero jal Area add $a0, $v0, $zero li $v0, 1 syscall la $a0, newline li $v0, 4 syscall sub $s0, $s0, $v0 6 Adriana WISE—CS301 Thursday, September 26, 2019 bltz $s0, LESS j MORE LESS: li $v0, 4 la $a0, msg2 syscall MORE: li $v0, 4 la $a0, msg1 syscall lw $ra, 0($sp) addi $sp, $sp, 4 jr $ra Area: subi $sp, $sp, 8 sw $ra, 0($sp) sw $s0, 4($sp) mul $s1, $a0, $a1 srl $v0, $s1, 1 lw $ra, 0($sp) lw $s0, 4($sp) addi $sp, $sp, 8 jr $ra Output: Area1=40 Area2=42 Area1 greater than Area2. -- program is finished running — Re-write the Triangles C and MIPS programs to read the triangles’ bases and heights as interactive user input. Write a MIPS assembly program (instructions at the end of Lecture 5 notes) to compare the areas of two triangles, taking as user input the bases and heights of the two triangles, and using two functions, Compare() and Area(), where Compare() calls Area(). For practice, also modify the existing C program to accept user input, as presented in class (lecture notes assume hard-coded values).

In: Computer Science

A sample human input file that contains test values that a human would enter on the...

A sample human input file that contains test values that a human would enter on the keyboard (covering both normal cases and boundary/error cases)

My code is to search the puzzle, read human_input.txt and then search the word

I have a problem with this line : while(fgets(humanchar, 1000, humanfile)),

searchfirst(array,height,width,"happy"); is search well but searchfirst(array,height,width,humanchar); is nothing happen

In addition, The input may contain upper and lower case characters, I try to convert it to lowercase, but i have a problem, so help me with it "you should convert them all to lower case when you read them."

And finally help me to reverse the word in each search

human_input.txt

search_puzzle.txt
happy
error
hope
exit

searchpuzzle.txt

10 7
ABCDEFt
SsGKLaN
OPpRcJW
PLDrJWO
ELKJiIJ
SLeOJnL
happyTg
BEoREEa
JFhSwen
ALSOEId

test.c

#include <stdio.h>
#include "functions.h"
#include <stdlib.h>
#include <ctype.h>
#include <string.h>

int fileio()
{   FILE *humanfile;
    char humanchar[1000];
   FILE *ptr_file;
   char buf[1000];
   int height,width;
   char **array; //create double pointer array
   // open human_input file
   humanfile = fopen("human_input.txt", "r");
       if (!humanfile)
       {
            printf("File is not available \n");
       return 1;
       }
   char filename[10];
   // get a name of puzzle file
   fscanf(humanfile,"%s",filename);
   //open puzzle file
   ptr_file =fopen(filename,"r");
   if (!ptr_file){
       printf("File is not available \n");
       return 1;
   }
   fscanf(ptr_file,"%d %d",&height,&width); // get height and weight
   printf("%d ",height);
   printf("%d",width);
   printf("\n");
   //allocate array
   array = (char **)malloc(sizeof(char *)*height); // create the array size
   for(int i = 0; i<height;i++){
       array[i] = (char *)malloc(sizeof (char) * width);
   }  
  
   int col = 0, row;
   //get a single char into array
   for(row=0; row<height; row++){
       fscanf(ptr_file, "%s", buf);
       for (int i =0; i <= width;i++){
           if (buf[i] != '\0'){
               array[row][col] = buf[i];
               col++;
       }
       }
       col = 0;
   }

   // print array
   for (int i = 0; i < height; i++) {
       for (int j = 0; j < width; j++){
           printf("%c", array[i][j]);
       }
       printf("\n");
   }
       //close file

   //////////////////////test/////////////////////////////////////////
   //   searchfirst(array,height,width,"happy"); // find the letter
   //   searchfirst(array,height,width,"EId"); // find the letter
       //searchfirst(array,height,width,"tNW");
       //searchfirst(array,height,width,"RwI");
       //searchfirst(array,height,width,"Eed");
       //searchfirst(array,height,width,"PDJ");
      
       //searchfirst(array,height,width,"Ryn");
       //searchfirst(array,height,width,"OsC");
       //searchfirst(array,height,width,"Eea");
       //searchfirst(array,height,width,"LhRynJ");
   /////////////////////////////////////////////////////////////////////
  
   //get a single char into array
  
   // human input I have problem with this one
   while(fgets(humanchar, 1000, humanfile)) {
        // printf("%s\n", humanchar);
           searchfirst(array,height,width,humanchar);
   }
      

       free(array);
       fclose(humanfile);
       fclose(ptr_file);
   return 0;
}

void searchfirst(char **array,int height,int width,char str[]){
// go through array
   for (int i = 0; i < height; i++) {
       for (int j = 0; j < width; j++){
           if (array[i][j] == str[0]){ /// find the first letter in string
           //printf("\nfound %s\n",str);  
           findwordhorizontal(array,i,j,str); //find the word horizontal
           findwordvertical(array,i,j,height,str); // find the word vertical
           findworddiagonal1(array,i,j,height,width,str);
           findworddiagonal2(array,i,j,width,str);
       }  
       }  
   }
}

void findwordhorizontal(char **array,int m,int n,char str[]){

   char *buffer = (char *) malloc(sizeof(char)*(n));  
   int j = 0;
   while (str[j] != '\0'){
       buffer[j] = array[m][n+j]; // add string to buffer
       j++;
   }
   buffer[j] = '\0';//add \0 to ending of string buffer
   int result = strcmp (buffer,str); // comparing string
   if (result==0) // if 2 string equal
   {
       printf("Found the word horizontal %s\n", buffer);      
   }
   free(buffer);
  
}

void findwordvertical(char **array,int n,int m,int height,char str[]){

   char *buffer = (char *) malloc(sizeof(char)*(height ));  
   int j = 0;
   while (n<height){
       buffer[j] = array[n][m]; // add string to buffer
       buffer[j+1] = '\0';//add \0 to ending of string buffer
       int result = strcmp (buffer,str); // comparing string
       if (result==0) // if 2 string equal
       {
           printf("Found the word vertical %s\n", buffer);      
       }
       n++;
       j++;
  
   }
   free(buffer);
}

void findworddiagonal1(char **array,int n,int m,int height,int width,char str[]){
   int count;
   for (count = 0; str[count]; count++){
       // just count length of str
   }  
  
   int calculate1 = width - m; // width - current col
   int calculate2 = height -n; // height - current row
  
   if ( calculate1 >= count && calculate2 >= count){ // if current n m have enough length of str: start searching
       char *buffer = (char *) malloc(sizeof(char)*(calculate1));  
       int j = 0;
       while (j<count){
           buffer[j] = array[n][m]; // add string to buffer
           buffer[j+1] = '\0';//add \0 to ending of string buffer
           //printf("%s vs %s\n",buffer,str);
           int result = strcmp (buffer,str); // compa4 7ring string
           if (result==0) // if 2 string equal
           {
               printf("Found the word diagonal 1 %s\n", buffer);      
           }
           n++;
           m++;
           j++;  
   }
   }
  
}

void findworddiagonal2(char **array,int n,int m,int width,char str[]){
   int count;
   for (count = 0; str[count]; count++){
       // just count length of str
   }  
  
   int calculate1 = width - m; // width - current col
   int calculate2 = n+1; // height - current row
   //printf("%d %d %d\n",calculate1,calculate2,count);
   if ( calculate1 >= count && calculate2 >= count){ // if current n m have enough length of str: start searching
       char *buffer = (char *) malloc(sizeof(char)*(calculate1));  
       int j = 0;
       while (j<count){
           buffer[j] = array[n][m]; // add string to buffer
           buffer[j+1] = '\0';//add \0 to ending of string buffer
           //printf("%s vs %s\n",buffer,str);
           int result = strcmp (buffer,str); // comparing string
           if (result==0) // if 2 string equal
           {
               printf("Found the word diagonal 2 %s\n", buffer);      
           }
           n--;
           m++;
           j++;  
   }
   }
  
}
int main()
{
   fileio();
   return 0;
}

In: Computer Science

Research and analyze MERCOSUR, a regional trade area encompassing Brazil, Argentina, Paraguay, Uruguay. Venezuela, although a...

Research and analyze MERCOSUR, a regional trade area encompassing Brazil, Argentina, Paraguay, Uruguay. Venezuela, although a full member, had it’s membership suspended in late 2016; associate countries are Bolivia, Chile, Colombia, Ecuador, Guyana, Peru and Suriname. One of the discussion within MERCOSUR member countries is to adopt a single common currency to become a common market much like the European Union. What issues should they consider before they accept or reject a common currency? Should associate countries be included in this endeavor or only include current member countries? Why or why not? Minimum word count: 600 words

In: Economics

How do you evaluate the conflicting ways of reading and interpreting the constitution? Define and evaluate...

How do you evaluate the conflicting ways of reading and interpreting the constitution? Define and evaluate the competing schools of Originalism and living constitutionalism. Discuss the three major conflicts underlying the conflicting schools of thought: Natural Rights versus Social Rights, Ordered Rights versus Pure Rights, and Federalism versus National Power. How should the approaches should be upheld? Make a concise case for the best way to understand the Constitution. Apply his understanding of the Constitution to one of the wo core cases we analyzed (pick either Roeor Korematsu) and explain why it was decided correctly or incorrectly. The Essay should be maximum 500 word

In: Psychology

the Articles of Confederation and Perpetual Union of the States and the Constitution.

Compare and contrast the Articles of Confederation and Perpetual Union of the States and the Constitution. Include: When was each document created? Why was a revision of the Articles considered necessary? How do both incorporate ideas of republicanism? What does each document say about slavery (even the word itself is not used)? What are the branches of government in each? Why? What do the branches do? Include a discussion of the Bill of Rights: In which document is it found? Why was it added? What does it say? Describe the First Party System: what were the parties, what were their beliefs, and what specific policies/laws did they follow that demonstrate those beliefs?

In: History

(1) Suppose that V is a vector space and that S = {u,v} is a set...

  1. (1) Suppose that V is a vector space and that S = {u,v} is a set of two vectors in V. Let w=u+v, let x=u+2v, and letT ={w,x} (so thatT is another set of two vectors in V ). (a) Show that if S is linearly independent in V then T is also independent. (Hint: suppose that there is a linear combination of elements of T that is equal to 0. Then ....). (b) Show that if S generates V then T also generates V . (Hint: try solving for u and v in terms of w and x.). (c) Summarize the results of parts (a) and (b), correctly employing the word ā€œbasisā€.

In: Advanced Math

The purpose of the Reflection Matrix assignment is to comprehend, apply, and synthesize key vocabulary terms...

The purpose of the Reflection Matrix assignment is to comprehend, apply, and synthesize key vocabulary terms and concepts relevant for entrepreneurs. The intent of the assignment is to challenge the student to locate reliable information and apply that knowledge in a practical manner to a business venture that interests the student, and to make relevant connections to course objectives. Your matrix will have three sections. You can write them in paragraph form or create a table in Word: Definitions Article synopses (2) Application and synthesis statement In the first section, briefly define the following terms: debt, equity, convertible debt, preferred equity, term sheet, private placement memorandum, target market, and market segment.

In: Finance

Describe Piaget’s four stages of cognitive development. Describe the physical characteristics at each stage of the...

  1. Describe Piaget’s four stages of cognitive development.
  2. Describe the physical characteristics at each stage of the life cycle.
  3. List the psychosocial changes at the different stages of development.
  4. Discuss the effect of the aging process on personality, intelligence, learning, and memory.
  5. Discuss Erikson’s stages of psychosocial development.
  6. Describe the cognitive changes occurring in the early childhood period.
  7. Discuss the developmental tasks of the adolescent period.
  8. List the developmental tasks for early adulthood.
  9. Describe the developmental tasks for middle adulthood.

Please post the answer so i can copy and paste it in my word or i can download....I would really appreciate if the answers can be more specific

In: Nursing